gpt4 book ai didi

java - 如何更改 ScrolledComposite 的水平滚动增量?

转载 作者:行者123 更新时间:2023-11-29 08:19:53 26 4
gpt4 key购买 nike

我有一个显示 ScrolledComposite 的应用程序。用户提示水平滚动增量太细,即每次单击水平滚动箭头当前一次移动一个像素。他们希望通过单独的点击来产生更大的水平移动。有人可以解释我如何实现这个吗?代码片段如下:

ScrolledComposite myScrolledComposite = new ScrolledComposite(parent, 
SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);

if ( myScrolledComposite == null) {
throw new NullPointerException("ScenePreView.java: " +
"Method createPartControl() " +
"ScrolledComposite myScrolledComposite == null.");
}

Composite myComposite = new Composite(myScrolledComposite, SWT.NONE);

if ( myComposite == null) {
throw new NullPointerException("ScenePreView.java: " +
"Method createPartControl() " +
"Composite myComposite == null.");
}

myScrolledComposite.setContent(myComposite);

最佳答案

这应该能很好地工作并提供可用的默认值。当 ScrolledComposite 中的控件调整大小时,它应该会自动更新。

myComposite.addControlListener( new ControlAdapter() {
@Override
public void controlResized( ControlEvent e ) {
ScrollBar sbX = scrolledComposite.getHorizontalBar();
if ( sbX != null ) {
sbX.setPageIncrement( sbX.getThumb() );
sbX.setIncrement( Math.max( 1, sbX.getThumb() / 5 ) );
}
}
});

关于java - 如何更改 ScrolledComposite 的水平滚动增量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/858591/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com