本文介绍了滚动 TreeViewer 树 SWT的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的对话框有两个 TreeViewer
组件.垂直滚动条必须同步.我尝试过 setSelection
和 setTopItem
方法,但都对其他树没有影响.
My dialog have two TreeViewer
components. The vertical scroll bars have to be synchronized. I have tried with setSelection
and setTopItem
methods but both have no effect to other tree.
xViewerLeft = createXViewer(leftComposite, this);
xViewerRight = createXViewer(rightComposite, this);
xViewerLeft.getTree().getVerticalBar().addListener(SWT.Selection, new Listener() {
@Override public void handleEvent(Event arg0) {
//xViewerRight.getTree().setSelection(xViewerLeft.getTree().getSelection());
//xViewerRight.getTree().setTopItem(xViewerLeft.getTree().getTopItem());
}
});
有什么想法吗?
推荐答案
解决方案:
vBar1.addListener(SWT.Selection, new Listener() {
@Override public void handleEvent(Event arg0) {
double y = vBar1.getSelection()*xViewerRight.getTree().view.bounds().height/100;
NSPoint nsPoint = new NSPoint();
nsPoint.x = 0;
nsPoint.y = y;
xViewerRight.getTree().view.scrollPoint(nsPoint);
}
});
这篇关于滚动 TreeViewer 树 SWT的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!