View Full Version : بدست آوردن Left , Top یک سل از دیبیگرید
rezamahdizadeh
دوشنبه 12 شهریور 1386, 07:01 صبح
من می خواهم Left و Top یک سل از dbgrid وقتی که روی آن سل می رویم را بدست آوریم. چه کار کنم؟ در CellClick چی؟
Answer
دوشنبه 12 شهریور 1386, 09:59 صبح
با استفاده از rec.top , rect.left در اونت DrawColumnCell میتوان به top , left یک سل دسترسی داشت. البته به کد زیر یه مگاه بنداز که کارت رو راه میندازه:
procedure TDbaForm.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
// چک شده که اولا آیا در سطر فکوس شده و ثانیا در فیلد مورد نظر که اینجا شماره 4 میباشید هستیم
if (gdFocused in State) and (Column.Field.Index = 4) then
begin
Button1.Top:=Rect.Top;
Button1.Left:=Rect.Left;
end;
rezamahdizadeh
چهارشنبه 04 مهر 1386, 07:10 صبح
با استفاده از rec.top , rect.left در اونت DrawColumnCell میتوان به top , left یک سل دسترسی داشت. البته به کد زیر یه مگاه بنداز که کارت رو راه میندازه:
procedure TDbaForm.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
// چک شده که اولا آیا در سطر فکوس شده و ثانیا در فیلد مورد نظر که اینجا شماره 4 میباشید هستیم
if (gdFocused in State) and (Column.Field.Index = 4) then
begin
Button1.Top:=Rect.Top;
Button1.Left:=Rect.Left;
end;
اگر بخواهیم به جای دکمه مورد اشاره در مثالی که ارایه نموده اید فرم دیگری باز شود به طوری که این فرم در جای مناسب باز شود چه کار کنیم
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.