首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >德尔福XE5火猴TStringGrid OnClick事件

德尔福XE5火猴TStringGrid OnClick事件
EN

Stack Overflow用户
提问于 2014-04-09 22:24:42
回答 2查看 3.4K关注 0票数 0

我有一个非常奇怪的问题,德尔福火猴子TStringGrid上的安卓。看起来,TStringGrid上的事件在windows和安卓平台上被不同的触发。例如:在WindowsFire猴子应用程序中,我有一个包含几个列的字符串网格。TStringGrid设置为只读。OnClick事件我有以下代码:

代码语言:javascript
复制
TStringGrid(Sender).Cells[TStringGrid(Sender).ColumnIndex,TStringGrid(Sender).Selected] := 'result';

Android应用程序有相同的代码OnClick事件。

代码语言:javascript
复制
TStringGrid(Sender).Cells[TStringGrid(Sender).ColumnIndex, TStringGrid(Sender).Selected] := 'result';

当我运行windows应用程序并单击string网格单元格时,它将被选中,然后在单元格中写入“结果”。

单击前的窗口

点击后的窗口

当我运行android应用程序并单击(点击)时,会发生的情况是,“结果”是在先前选定的单元格中编写的,在该单元格之后,单击“被选中”。

点击之前的android

点击后的android

我不确定这是火猴的错误还是预期的行为。有什么办法可以克服这个问题吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-12 16:58:40

TGrid是一个不受支持的移动控件,所以您应该避免使用它。最好的选择可能是具有自定义样式的TListBox。

票数 1
EN

Stack Overflow用户

发布于 2014-04-10 09:02:29

这可能是一个线程问题。但我不太确定你是不是在使用最好的事件处理程序。如果您试图更新正在选择的单元格,那么我会建议您处理TStringGrid.OnSelChanged事件。此事件是在更改单元格选择后触发的。

不过要小心..。它不是严格通过鼠标点击(或手指点击)来触发的。如果您在Android设备上安装了某种键盘,或者在桌面平台上,当您使用箭头键和其他方式时,它也会启动。我觉得你明白我的意思..。但也许这正是你想要的。

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

https://stackoverflow.com/questions/22975120

复制
相关文章

相似问题

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