goRangeSelect := false ; //不允许选择多行
goRowSelect := true ; //选择行
procedure Tfm_main.Grid2DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
s: String;
R: TRect;
begin
if ARow = Grid2.Row then
begin
TStringGrid(Sender).Canvas.Brush.Color := clmoneygreen;
S := TStringGrid(Sender).Cells[ACol, ARow];
R := TStringGrid(Sender).CellRect(ACol, ARow);
TStringGrid(Sender).Canvas.FillRect(R);
TStringGrid(Sender).Canvas.Font.Color := clTeal ;
TStringGrid(Sender).Canvas.TextOut(R.Left, R.Top, S);
end;
end;
procedure Tfm_main.Grid2MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
Cell: TGridCoord;
begin
try
if (Button = mbRight) then
begin
Cell := Grid2.MouseCoord(X,Y);
if (Cell.X >= 0) and (Cell.Y >= 1) then
begin
Grid2.Col := Cell.X;
Grid2.Row := Cell.Y;
end;
end;
except
end;
end;