我遇到了一个问题,即在我的应用中TListBox
中选择了不正确的项目,表单中有HorzScrollBox
。表单上有两个(或更多)TListBox
。它们彼此远离,使得它们的绝对左坐标差异大于当前设备屏幕宽度的宽度。该错误出现在以下用户操作序列中。
TListBox
TListBox
对用户可见,左侧为隐形。TListBox
中选择了一个新项目。我们得到以下图片: 选择了新项目,但即使我们上下滚动框,选择也会保留在先前所选项目的位置上。
可以以非常简单的方式重现错误。
TListBox
(它会更快)。TListBox
置于HorzScrollBox
内,以便不会同时看到左右TListboxes
,只有在滚动{{}后才能选择项目{1}}。HorzScrollBox
)并将创建的TPrototypeBindSource
的{{1}}属性设置为ListItemStyle
。完成。当您运行该应用程序时,您会遇到问题。只有当您滚动LinkFieldControlToField
时,才会显示该错误,以便您在第一个项目中选择项目时看不到第二个MetropolisUI
。否则,正确选择项目(即使您滚动HorzScrollBox
)。
这是表单的资源(除了样式的二进制文件,它需要存在以重现该错误)。
ListBox
有人有任何建议如何应对吗?
答案 0 :(得分:1)
我通过设置ListBox1.CanFocus := false;
找到答案。在某些情况下(后面),错误再次发生。