首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TStringGrid OnHeaderClick事件

TStringGrid OnHeaderClick事件
EN

Stack Overflow用户
提问于 2018-08-23 11:22:03
回答 1查看 259关注 0票数 0

我有一个简单的安卓应用程序,由TSringGrid和2列组成,其中一列是TColumn,另一列是TCheckColumn。我可以使用TButton和适当的代码对每一列进行排序,但是TButtons占用了宝贵的屏幕空间,可以更好地使用。是否可以通过使用OnHeaderClick事件并从该事件调用适当的操作来确定选择了哪一列。

非常感谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-23 13:55:01

首先,事件处理程序签名的示例:

代码语言:javascript
复制
procedure TForm5.StringGrid1HeaderClick(Column: TColumn);

Column参数是单击了标题的列。

有许多方法可以检测单击了哪一列,以下是三种方法:

替代一:检查列的Header属性

代码语言:javascript
复制
  if Column.Header = 'First column' then
    ShowMessage('First clicked')
  else
  if Column.Header = 'Second column' then
    ShowMessage('Second clicked');

备选方案二:检查列的Name属性

代码语言:javascript
复制
  if Column.Name = 'Column1' then
    ShowMessage('First clicked')
  else
  if Column.Name = 'CheckColumn1' then
    ShowMessage('Second clicked');

备选方案三:在设计时为每个列的标记属性赋值,并在运行时检查Column.Tag值

代码语言:javascript
复制
  case Column.Tag of
    0: ShowMessage('First clicked');
    1: ShowMessage('Second clicked');
  end;

当然,您需要根据实际网格更改标识符。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51984642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档