加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

delphi – Firemonkey ScrollBox Bug

发布时间:2020-12-15 05:24:54 所属栏目:大数据 来源:网络整理
导读:我们正在经历在Firemonkey的ScrollBox组件中似乎是一个奇怪的错误(因为TGrid继承自TScrollBox它也影响所有网格)。在我们的开发机器上,一切工作正常,而在其他人的错误发生。我们未能检测到系统之间的任何模式(我们检查操作系统,图形硬件,DirectX版本)。
我们正在经历在Firemonkey的ScrollBox组件中似乎是一个奇怪的错误(因为TGrid继承自TScrollBox它也影响所有网格)。在我们的开发机器上,一切工作正常,而在其他人的错误发生。我们未能检测到系统之间的任何模式(我们检查操作系统,图形硬件,DirectX版本)。

再生产:

>创建一个新的FireMonkey应用程序。在表单上放置一个TScrollBox。
>向滚动框添加按钮,并将其垂直位置设置为500000。
>启动应用程序,并检查当滚动到滚动框的末尾时是否显示按钮。

如果发生错误,该按钮不可见。

当使用网格时,这将导致正确显示行1-19047,并且不显示19047及以上的所有行。

有任何人有任何想法,可能是什么导致这?或任何想法如何我们可以更详细地识别问题?

解决方法

在遇到各种各样的滚动问题后,我得出结论,在firemonkey中滚动组件有一个初始化问题,它表现在狡猾的滚动行为。有时它会工作,有时它不会…

之后,我认为我修复了这个问题几次,只有观察问题重新出现在后续的编译(或不同的操作系统),我已经在添加所有子组件后调用组件的UpdateStyle方法取得了很大的成功。也就是说该问题尚未重新出现,因为添加了呼叫…

例如。以下伪代码填充滚动组件,然后调用UpdateStyle,这似乎迫使组件“修复”各种属性的无效设置 – 最小,最大等。

for i := 1 to x do
  MyScrollComponent.AddObject(MyObject[i]);
MyScrollComponent.UpdateStyle;

希望这也为你工作…

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读