procedure TForm1.StringGrid1DblClick(Sender: TObject); var ACol, ARow: Integer; APoint: TPoint; begin exit; With StringGrid1 do begin APoint := ScreenToClient(Mouse.CursorPos); MouseToCell(APoint.X, APoint.Y, ACol, ARow); if (ACol >= 0)And(ARow >=0) then ShowMessage(Cells[ACol, ARow]); end; end; 或者 procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer; var CanSelect: Boolean); begin ShowMessage(IntToStr(ARow)); end;
我是说每条记录的事件,换句话就是每行的事件
var
ACol,
ARow: Integer;
APoint: TPoint;
begin
exit;
With StringGrid1 do
begin
APoint := ScreenToClient(Mouse.CursorPos);
MouseToCell(APoint.X, APoint.Y, ACol, ARow); if (ACol >= 0)And(ARow >=0) then ShowMessage(Cells[ACol, ARow]);
end;
end;
或者
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
ShowMessage(IntToStr(ARow));
end;