ورود

View Full Version : آموزش: درج شماره ردیف در DBGrid



rkhabbazi
دوشنبه 22 آذر 1389, 12:45 عصر
سلام
اگر خواسته باشید در DBGrid یک ستون برای شماره ردیف در نظر بگیرید که هنگام نمایش رکورد ها در آن شماره ردیف را در آن نمایش دهد، بصورت زیر عمل کنید که در رویداد OnDrawCulomnCell کد زیر را وارد کنید:

if DataSource1.DataSet.RecNo > 0 then
begin
if Column.Title.Caption = 'Number' then
DBGrid1.Canvas.TextOut(Rect.Left + 2, Rect.Top, IntToStr(DataSource1.DataSet.RecNo));
;end

دقت کنید که این کد شماره ردیف را در ستونی که عنوان آن Number باشد، درج می کند.
امیدوارم که این مطلب برای شما جدید باشه.:خجالت:
خدانگهدار

hamid-nic
دوشنبه 22 آذر 1389, 13:29 عصر
ممنون دوست عزیز از مطلبتون
اما قبلا در این مورد در سایت بحث شده بود .

Mask
سه شنبه 23 آذر 1389, 10:51 صبح
ممنون.
دوست عزیز آیا این ردیف رو میشه در چاپ هم آورد؟

xboycooper
چهارشنبه 24 آذر 1389, 09:52 صبح
ممنون.
دوست عزیز آیا این ردیف رو میشه در چاپ هم آورد؟
سلام
من قبلا این مشکل رو داشتم . در چاپ نشون نمیده ! ولی میتونید از کد Line# توی برنامه گزارشگیریتون استفاده کنید .

mandana2010
شنبه 27 آذر 1389, 13:35 عصر
كد #line چيه ؟ ميشه كمي توضيح بدين

hossein_h62
شنبه 27 آذر 1389, 13:44 عصر
منظورشون ایجاد ردیف توسط کد فوق داخل دیزاینر گزارش هست. مثلا توی فست ریپورت.

behzadboloori
یک شنبه 28 آذر 1389, 16:30 عصر
این روش یه اشکال بزرگ داره و اونم اینه که شما دارید عددی رو به صورت گرافیکی (Canvas) در گرید مینویسید. برای همین به اون عدد به صورت متنی دسترسی ندارین.
راه حل:
اول روی ADOQuery یک فیلد Calculated به نام ردیف درست کنید.
بعد در OnCalcField اونرو مقدار دهی کنید.
اینطوری یک عدد در گرید دارین که هم میتونین به اکسل اکسپورت کنین و هم پرینت بگیرین.