【发布时间】:2015-10-01 21:27:24
【问题描述】:
几个小时后,我在此处或其他地方都找不到有关此问题的任何参考。 Android 和 Windows(我不知道 iOS)的多设备应用程序(因此 FMX 不是 VCL)都会出现问题。
设置:
在表单上放置一个网格(TGrid 或 TStringGrid)。
通过添加列使网格大于表单,确保需要水平滚动。
在网格选项中,选择绘制ColLines、RowLines 和AlternatingRowBackground。
RowSelect 也可以是 True,一次突出显示整行。
问题: 水平滚动时,网格之前隐藏的部分不显示任何RowLines 或背景(ColLines 绘制良好),或从RowSelect 突出显示。
无论列限制如何,都会剪切着色和绘图。在调整窗口大小以适应网格(在 Windows 操作系统上)时,颜色和线条会很好地绘制在先前隐藏的列上。
我已经尝试过,OnDrawColumnCell 和 OnHScrollChange 事件:
-
StringGrid.Repaint, Self.Invalidate:没有结果 -
Application.HandleMessage, Application.ProcessMessages:慢点 应用程序 -
StringGrid.Canvas.Clear(0):放慢速度,搞砸应用程序 - Debug 和 Release 版本之间的更改:没有结果
- 将
Grid.Align更改为 Client、None、Fit、Contents、Scale:无结果
请问,有没有人知道在水平滚动时按预期显示网格的方法?
2016 年 8 月 12 日编辑:不关心 Delphi 10.1(柏林)
【问题讨论】:
-
您使用的是什么版本的Delphi?我对 Delphi XE7 Update 1 和 Delphi XE8 有同样的问题。
-
我正在使用 Delphi XE7 update 1。我已经编辑了我的帖子。
-
我已经为你添加了相应的标签:)
-
我尝试了很多,但我遇到了同样的问题。我建议看看这里:Tms FmxGrid
-
@whosrdaddy:感谢您的标记和编辑
标签: delphi scroll grid firemonkey delphi-xe7