我正在制作一个应用程序,其中有许多行数据从数据库存根(将成为Oracle数据库)返回,由于某种原因,滚动条停在大约第500个元素处。我想知道有没有在滚动条中显示所有元素的方法。
发布于 2010-05-21 20:13:11
我在这里假设您使用的是Windows,因为Windows上的滚动条存在一个相当普遍的问题:最大值是一个短整型32,768。因此,如果ScrolledComposite的内部合成的高度大于32,768像素,则该合成将被裁剪。
我还没有找到一个健壮的方法来解决这个问题,但是有一个变通方法:将滚动条从你想要滚动的组合中分离出来。您不能创建ScrollBar,但您可以创建一个与ScrollBar一样宽的ScrolledComposite,然后将ScrollListener附加到它并让它调整滚动复合的布局位置。
在某个地方我有一个片段,但我甚至不确定这个诊断是否适用于您的场景。
发布于 2010-05-18 03:19:29
您可能需要设置ScrollBar的最小值和最大值。您将分别使用setMinimum()和setMaximum()方法。
设置页面增量也是一个好主意。这是当用户单击拇指和箭头按钮之间的区域,或者按下Page Up或Page Down按钮时,所选值更改的滚动行数。您将使用setPageIncrement()方法。
最后,Oracle可能会限制您可以从表中检索的最大行数。我相信默认值是500行。
https://stackoverflow.com/questions/2851955
复制相似问题