PDA

View Full Version : شماره گذاری Indicator در Dbgrid



khoshblagh
دوشنبه 23 شهریور 1388, 08:10 صبح
با سلام خدمت دوستان
کسی میدونه چطور ناحیه Indicator در Dbgrid را شماره گذاری کرد؟ بعضا دیده شده از این ناحیه به عنوان شماره گذاری استفاده میشود که مثلا از شماره یک الی آخر جدول شماره گذاری شده است.که این مورد در بعضی جاها مورد نیاز میباشد. متشکرم

vcldeveloper
دوشنبه 23 شهریور 1388, 18:51 عصر
باید بتونید از طریق رویداد OnDrawColumnCell روی این ستون رسم کنید.

Mahmood_M
دوشنبه 23 شهریور 1388, 19:51 عصر
کسی میدونه چطور ناحیه Indicator در Dbgrid را شماره گذاری کرد؟
همونطور که جناب کشاورز اشاره کردند ، در رویداد OnDrawColumnCell باید در Canvas مربوط به DBGrid شماره رو در قسمت مورد نظر رسم کنید ...
خاصیت Canvas متدی با عنوان TextOut داره که متن رو رسم میکنه ، این متد 3 تا ورودی داره ، یکی X که باید 0 باشه ، یکی Y که باید برابر با مقدار Rect.Top در رویداد OnDrawColumnCell قرار بدید و سوم مقدار Text که باید برابر با شماره ی رکورد فعلی جدول قرار بدید ، یعنی در کل میشه این :

DBGrid.Canvas.TextOut(0, Rect.Top, IntToStr(DBGrid.DataSource.DataSet.RecNo));


موفق باشید ...

khoshblagh
سه شنبه 24 شهریور 1388, 07:49 صبح
با تشکر از پاسختان
جناب Mahmood_N با کد شما مسئله حل شد. ولی وقتی اعداد آن ناحیه مثلا سه رقمی شد از ناحیه مربوطه خارج و از ناحیه فیلد همجوار استفاده میکند. آیا راهی است که ناحیه مربوطه را عریض تر کرد که اعداد مثلا سه رقمی را کاملا در خود قرار دهد؟ متشکرم