Membuat warna record DBGRid pada ‘event mouse over’

DOWNLOAD JADWAL.xlsx
Berikut ini cara membuat warna pada record di DBGRid pada event mouse over yang berfungsi untuk mempercantik interface. Caranya cukup sederhana dan mudah difahami, Berikut langkah nya: 1. Ketik “ type THackDBGrid = class(TDBGrid); ” tanpa tanda petik tepat di bawah “Uses” seperti gambar berikut :
2. Ketikkan kode berikut pada DBGRid dalam event “OnDrawColumnCell” : procedure TFcode.DBGridDrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); var grid : TDBGrid; row : integer; begin //Warna pada mouse move if (THackDBGrid(DBGrid).DataLink.ActiveRecord + 1 = THackDBGrid(DBGrid).Row) or (gdFocused in State) or (gdSelected in State) then begin DBGrid.Canvas.Brush.Color := clLime; DBGrid.Canvas.Font.Style := DBGrid.Canvas.Font.Style + [fsBold] + [fsItalic]; DBGrid.Canvas.Font.Color := clRed; end; //Warna berbeda pada DBGrid grid := sender as TDBGrid; row := grid.DataSource.DataSet.RecNo; if Odd(row) then grid.Canvas.Brush.Color := $00E1D7D5 else grid.Canvas.Brush.Color := $00C0F1B1; grid.DefaultDrawColumnCell(Rect, DataCol, Column, State) ; end; 3. Langkah takhir adalah ketik kode berikut pada DBGRid dalam event “OnMouseMove” : procedure TFcode.DBGridMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var gc: TGridCoord; begin gc:= DBGrid.MouseCoord(x, y); if (gc.X > 0) AND (gc.Y > 0) then begin DBGrid.DataSource.DataSet.MoveBy (gc.Y - THackDBGrid(DBGrid).Row); end; end; Semoga tulisan ini bermanfaat… Link Download lengkap :

Cara membuat warna pada DBGrid di delphi

Untuk memperindah view data pada DBGrid di Delphi dengan warna yang berbeda pada setiap recordnya cukup dengan menambahkan code berikut : di DBGRid pada event on DrawColumnCell.
procedure TFkaryawan.dbgkaryawanDrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); var grid : TDBGrid; row : integer; begin grid := sender as TDBGrid; row := grid.DataSource.DataSet.RecNo; if Odd(row) then grid.Canvas.Brush.Color := $00E1D7D5 else grid.Canvas.Brush.Color := $00C0F1B1; grid.DefaultDrawColumnCell(Rect, DataCol, Column, State) ; end; semoga ini bermanfaat walaupun sudah banyak yang posting tentang mewarnai grid..

Pages

next page