Anda di halaman 1dari 1

Seleksi Baris DBGrid menggunakan event onMouseMove

Tip dan trik ini berguna untuk menyeleksi record/baris pada DBGrid berdasarkan gerakan mouse yang melintas pada DBGrid... Tambahkan kode berikut pada deklarasi type :
type THackDBGrid = class(TDBGrid); ... ...

Kode dibawah ditambahkan pada event OnMouseMove dari DBGrid :


procedure TForm1.DBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var gc: TGridCoord; begin gc:= DBGrid1.MouseCoord(x, y); if (gc.X > 0) AND (gc.Y > 0) then begin DBGrid1.Cursor:=crHandPoint; DBGrid1.DataSource.DataSet.MoveBy (gc.Y - THackDBGrid(DBGrid1).Row); end else DBGrid1.Cursor:=crDefault; end;

Untuk menambahkan efek highlight, tambahkan kode berikut pada event OnDrawColumnCell dari DBGrid :
if (THackDBGrid(DBGrid1).DataLink.ActiveRecord + 1 = THackDBGrid(DBGrid1).Row) or (gdFocused in State) or (gdSelected in State) then begin DBGrid1.Canvas.Brush.Color := clBlueSky; DBGrid1.Canvas.Font.Style := DBGrid1.Canvas.Font.Style + [fsBold]; DBGrid1.Canvas.Font.Color := clRed; end;

Catatan : Pilih Option RowSelect DBGrid agar True.. Semoga bermanfaat...

Anda mungkin juga menyukai