从TStringGrid中选择一行,单击该行中的任何单元格。

时间:2014-02-28 11:50:27

标签: delphi tstringgrid

我在一个有1个FixedCol和1个FixedRow的表单上有一个TStringGrid对象。我希望能够在用户单击该行中的任何单元格时选择对象上的整行。此选择也必须对用户可见(我希望行改变颜色)。

编辑:已将goRowSelect放在对象的选项中。现在有办法在单击固定列中的一个单元格时选择行吗?

2 个答案:

答案 0 :(得分:6)

为了在用户点击该行中的任何单元格时突出显示整行,请设置以下StringGrid属性。

在设计时:转到options属性并检查以下子属性。

goEditing := TRUE;
goRowSelect := TRUE;

要在运行时实现此目的,

StringGrid1.Options := StringGrid1.Options + [goEditing];
StringGrid1.Options := StringGrid1.Options + [goRowSelect];

答案 1 :(得分:5)

如果启用字符串网格的选项goFixedColClick,则可以使用OnFixedCellClick事件来确定要选择的行。然后,您可以设置StringGrid1.Selection := TGridRect(Rect(0, Row, n, Row));,其中Row是单击的行,n是StringGrid的宽度。