可以,只是有点麻烦而已。如果调试通过,请给分哦。unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, DBTables, AppEvnts, Grids, DBGrids;type TDBGrid=Class(DBGrids.TDBGrid);//为了访问DataLink属性 TForm1 = class(TForm) DBGrid1: TDBGrid; ApplicationEvents1: TApplicationEvents; Table1: TTable; DataSource1: TDataSource; procedure ApplicationEvents1ShowHint(var HintStr: String; var CanShow: Boolean; var HintInfo: THintInfo); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.ApplicationEvents1ShowHint(var HintStr: String; var CanShow: Boolean; var HintInfo: THintInfo);Var OldRec:Integer; t:TPoint;begin IF HintInfo.HintControl <> DBGrid1 Then Exit; if not DBGrid1.DataLink.Active then Exit; OldRec:=DBGrid1.DataLink.ActiveRecord; t:=DBGrid1.ScreenToClient( Mouse.CursorPos ); DBGrid1.DataLink.ActiveRecord := (t.Y-20) Div DBGrid1.DefaultRowHeight; HintStr := DBGrid1.DataLink.Fields[0].Asstring+' '+DBGrid1.DataLink.Fields[1].Asstring; DBGrid1.DataLink.ActiveRecord := OldRec;end;end.