واضح آرشیو وب فارسی:سایت ریسک: secret6313th January 2009, 11:06 PMمتغییر Hint برای هر ستون از DBGrid در دلفی ابتدا باید یک عنصر جدید مبتنی بر TDBGrid ایجاد کنید و رویداد OnMouseMove را فراخوانی کنید: type TMyDBGrid = class(TDBGrid) published property OnMouseMove; end; اگرچه شما در رویداد OnMouseMove مختصات X و Y را بدست خواهید آورد، اما شما باید ستون مورد نظر را پیدا کنید. برای ادامه کار لازم است که سطر زیر را در قسمت protected قرار دهید: procedure WMMouseMove(var Message : TWMMouse); message WM_MOUSEMOVE; همچنین متغیر های زیر را در قسمت public اضافه نمایید: MouseRow : integer; MouseCol : integer; بنابراین متد WMMouseMove بصورت ریر خواهد بود: procedure TMyDBGrid.WMMouseMove(var Message : TWMMouse); var t : TGridCoord; begin t := MouseCoord(Message.XPos, Message.YPos); MouseCol := t.x; MouseRow := t.y; inherited; end; ما ابتدا فیلدهای XPost و YPos را از ساختار WMMouseMove تنظیم میکنیم: procedure TForm2.MyDBGrid 1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if (((dgIndicator in MyDBGrid 1.Options) and (MyDBGrid 1.MouseCol > 0)) or ((not (dgIndicator in MyDBGrid 1.Options)) and (MyDBGrid 1.MouseCol <> -1))) and (MyDBGrid 1.MouseCol <> OldMouseCol) then begin OldMouseCol := MyDBGrid 1.MouseCol; if dgIndicator in MyDBGrid 1.Options then MYDBGrid 1.Hint := MyDBGrid 1.Columns[MyDBGrid 1.MouseCol - 1].FieldName else MYDBGrid 1.Hint := MyDBGrid 1.Columns[MyDBGrid 1.MouseCol].FieldName; end; end; حالا مجددا" تعریف زیر را در قسمت public قرار دهید: HintMouseMessage(Control : TControl; var Message : TMessage) در قسمت OnMouseMove از TDBGrid نیز فرامین زیر را اضافه نمایید: var r : TMessage; begin Application.HintMouseMessage(self, r); TWMMouse(r).XPos := X; TWMMouse(r).YPos := Y; Application.HintMouseMessage(MyDBGrid 1, r); end; همه کارها انجام شد. حالا شما میتوانید نتیجه را مشاهده کنید سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 288]