View Full Version : سوالات مربوط به GRID
rahro
یک شنبه 24 دی 1385, 09:02 صبح
سلام
در هنگامی که از گرید استفاده میکنیم اگر طول یک فیلد از اندازه مورد نظر در گرید بیشتر باشه سیستم به طور اتوماتیک با نمایش tooltip شرح کار را نمایش میده .
آیا راهی هست که فونت مورد نظر رو تغییر بدهیم و از فونت پیش فرض استفاده نکنیم؟ منظورم نوع فونت نمایش tooltip هستش.
rahro
یک شنبه 24 دی 1385, 12:00 عصر
بازهم سلام
در یک فرم که با یک گرید مزین شده هنگامی رکوردی را جستجو میکنم با یافتن رکورد مورد نظر و refreshکردن گرید , recordmark در سمت چپ گرید نمایش داده میشود چطور میتوان رکورد جاری در رکورد را با رنگی دیگر متمامیز کنم بدون اینکه گرید مورد توجه فکوس قرار گیرد؟
mehran_337
یک شنبه 24 دی 1385, 15:12 عصر
در init گرید این دستور را بنویس :
This.SetAll("dynamicbackcolor","this.recBackcolor()", "Column")
بعد یه تابع با نام recBackcolor بنویس که با هر شرطی رنگی را برگرداند اینطوری :
DO CASE
CASE a = 1
RETURN RGB(255,255,0)
CASE a = 2
RETURN RGB(0,255,0)
OTHERWISE
RETURN RGB(255,255,255)
ENDCASE
rahro
دوشنبه 25 دی 1385, 09:01 صبح
سلام
مهران جان :
this.recBackcolor چیه ؟ یک متد
اگر متد باشه باید با thisofrm.recbackcolor صدا زده بشه !؟
و پارامتر a چیه ؟
میشه بیشتر توضیح بدی
متشکرم
mehran_337
دوشنبه 25 دی 1385, 14:18 عصر
اهان ببخشید
من چون یک کلاس درست کرده بودم و این خاصیت رو به عنوان کلاس تعریف کرده بودم یادم رفت پاکش کنم . شما فقط اسم تابع رو بده بدون this
در مورد a هم همون شرطیه که می خوای بدی خودت می دونی مثلا اگر a بود رنگش این باشه و غیره هر شرطی که دوست داری بزار
rahro
سه شنبه 26 دی 1385, 07:08 صبح
اهان ببخشید
من چون یک کلاس درست کرده بودم و این خاصیت رو به عنوان کلاس تعریف کرده بودم یادم رفت پاکش کنم . شما فقط اسم تابع رو بده بدون this
در مورد a هم همون شرطیه که می خوای بدی خودت می دونی مثلا اگر a بود رنگش این باشه و غیره هر شرطی که دوست داری بزار
در کل فرق نمیکنه تابع recBackcolor تنها نوع رنگ رو بر میگردونه حال اگر بجای این کلمه دستور
RGB(0,255,0) را نیز بگذاریم جواب نمیگیرم چرا که در ابتدای کار تمام گرید من ( البته تمام رکوردها مندرج در گرید) به رنگ داده شده در میاد در حالی که من میخوام تنها رکورد یافته شده را از سایر رکوردها متمایز کنم .
نمی دانم شاید دوباره در اجرای دستور شما اشتباه کردم
mehran_337
سه شنبه 26 دی 1385, 08:59 صبح
خب به همین خاطره که باید یک تابع تعریف کنی و در صورت برقراری شرط این عمل انجام بشه . یعنی توی تابع recbackcolor بگی اگر پیدا شد این رنگ در غیراینصورت رنگ سفید را برگرداند
rahro
سه شنبه 26 دی 1385, 10:06 صبح
خب به همین خاطره که باید یک تابع تعریف کنی و در صورت برقراری شرط این عمل انجام بشه . یعنی توی تابع recbackcolor بگی اگر پیدا شد این رنگ در غیراینصورت رنگ سفید را برگرداند
سلام حل شد و صورت مسئله یک کم مغایر دستور شما بود که مطمئنا این مربوطه به نوع خواسته من و شما بود
من یک شرح کلی از دستوری که داده اید را عرض میکنم شاید بدرد دوستان بخوره
من یک property بنام outcolor و یک متد به نام recbackcolor تعریف کردم و در int گرید خود این خط فرمان رو نوشتم
This.SetAll("dynamicbackcolor","thisform.recBackcolor()","Column")
و در متد مربوطه این رو نوشتم
IF thisform.outcolor=RECNO()
RETURN RGB(0,255,0)
ELSE
RETURN RGB(146,201,201)
ENDIF
حال در valid تکست باکس خودم بعد از یافتن رکورد مورد نظرم مقدار outcolor را مساوی با رکورد جاری قرار دادم و بس .
از لطف شما متشکرم
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.