我们从版本 1 开始使用 Firemonkey,但在更新当前在屏幕上可见的组件时仍然遇到困难。在 Firemonkey 中请求重绘的“方法”有很多,可能太多了:
- 应用样式(ApplyStyle 事件) - 主要是当它在屏幕上可见时
- 请求“.repaint”——一些组件有这个
- 请求“.realign” - 有时有效,当前版本的 FMX 似乎删除/隐藏它
- 请求“.invalidate”——一些组件,主要是表单,有这个
- 请求“.invalidateRect” - 大多数组件都有这个
- 手动调用 ApplyStyle 事件 - 不能保证工作和设计是不正确的......
鉴于平台缺乏文档,当组件已经显示时,是否有一种“定义明确”的方式来更改视觉外观(样式的内部值)?即一个已经存在并且在屏幕上可见的listboxItem,一个TGrid 单元格,等等。将不胜感激你的想法...