我在具有 1 个 FixedCol 和 1 个 FixedRow 的表单上有一个 TStringGrid 对象。当用户单击该行中的任何单元格时,我希望能够选择对象上的整行。此选择还必须对用户可见(我希望该行更改颜色)。
编辑:已将 goRowSelect 放入对象的选项中。现在有没有办法通过单击固定列中的一个单元格来选择行?
我在具有 1 个 FixedCol 和 1 个 FixedRow 的表单上有一个 TStringGrid 对象。当用户单击该行中的任何单元格时,我希望能够选择对象上的整行。此选择还必须对用户可见(我希望该行更改颜色)。
编辑:已将 goRowSelect 放入对象的选项中。现在有没有办法通过单击固定列中的一个单元格来选择行?
为了在用户单击该行中的任何单元格时突出显示整行,请设置以下 StringGrid 属性。
在设计时:转到 options 属性并检查以下子属性。
goEditing := TRUE;
goRowSelect := TRUE;
为了在运行时实现这一点,
StringGrid1.Options := StringGrid1.Options + [goEditing];
StringGrid1.Options := StringGrid1.Options + [goRowSelect];
如果启用goFixedColClick
字符串网格选项,则可以使用该OnFixedCellClick
事件来确定要选择的行。然后,您可以设置StringGrid1.Selection := TGridRect(Rect(0, Row, n, Row));
其中 Row 是单击的行,n 是 StringGrid 的宽度。