//参考
type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
DataSource1: TDataSource;
Table1: TTable;
procedure DBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
private
{ Private declarations }
FGridCoord: TGridCoord;
FMousePoint: TPoint;
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.DBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var
vGridCoord: TGridCoord;
begin
vGridCoord := TDBGrid(Sender).MouseCoord(X, Y);
if (FGridCoord.X = vGridCoord.X) and (FGridCoord.Y = vGridCoord.Y) then Exit;
FMousePoint := Point(X, Y);
FGridCoord := vGridCoord;
TDBGrid(Sender).Refresh;
end;procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
vGridCoord: TGridCoord;
begin
vGridCoord := TDBGrid(Sender).MouseCoord(Rect.Left, Rect.Top);
if (FGridCoord.X = vGridCoord.X) and (FGridCoord.Y = vGridCoord.Y) then
Caption := Column.Field.DisplayText;
end;
type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
DataSource1: TDataSource;
Table1: TTable;
procedure DBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
private
{ Private declarations }
FGridCoord: TGridCoord;
FMousePoint: TPoint;
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.DBGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var
vGridCoord: TGridCoord;
begin
vGridCoord := TDBGrid(Sender).MouseCoord(X, Y);
if (FGridCoord.X = vGridCoord.X) and (FGridCoord.Y = vGridCoord.Y) then Exit;
FMousePoint := Point(X, Y);
FGridCoord := vGridCoord;
TDBGrid(Sender).Refresh;
end;procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
vGridCoord: TGridCoord;
begin
vGridCoord := TDBGrid(Sender).MouseCoord(Rect.Left, Rect.Top);
if (FGridCoord.X = vGridCoord.X) and (FGridCoord.Y = vGridCoord.Y) then
Caption := Column.Field.DisplayText;
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货