如何得知鼠标在DBGRID中哪一列,及其相应标题的获得,以及DBGRIDEH是否免费的问题 ( 积分: 100 )

  • 主题发起人 主题发起人 wqhatnet
  • 开始时间 开始时间
W

wqhatnet

Unregistered / Unconfirmed
GUEST, unregistred user!
如何得知鼠标在DBGRID中哪一列,及其相应标题的获得,以及DBGRIDEH是否免费的问题
如题
谢谢
 
只能顶一下了
 
在DBGrid的OnMouseDown事件里就可以得到:
procedure TForm1.DBGrid1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
iCol: Integer;
begin
with DBGrid1 do begin
iCol := MouseCoord(X, Y).X;
if (iCol > 0) and (iCol <= Columns.Count) then begin
Self.Caption := Format('列序号: %d 列标题: %s', [iCol, Columns[iCol -1].Title.Caption]);
end;
end;
end;

DBGridEh好像不是免费的哦^?^
 
procedure TForm1.DBGrid1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
GridCoord: TGridCoord;
begin
GridCoord := DBGrid1.MouseCoord(X, Y);
if GridCoord.X = -1 then
begin
Caption := '鼠标在空白处按下';
Exit;
end;
Caption := Format('鼠标在第%d行、第%d列按下,', [GridCoord.Y, GridCoord.X]);
if dgIndicator in DBGrid1.Options then
begin
if GridCoord.X > 0 then
Caption := Caption + '列标题为:' + DBGrid1.Columns[GridCoord.X - 1].Title.Caption
else
Caption := Caption + '此列为指示符列';
end
else
Caption := Caption + '列标题为:' + DBGrid1.Columns[GridCoord.X].Title.Caption;
end;
 
DBGRIDEH是否免费的问题

答案跟
DELPHI是不是免费的相同

看你怎么用了
 
怕什么啊,现在有那么人搞解。
况且
现在软件都不是向开源发展么
呵呵
 
后退
顶部