swt中的swt tableeditor数据太多,怎么通过鼠标滚轮控制上下移动

& 前段时间做mxgraph流程项目,mxgraph是纯java编写的,流程图有鼠标滚动放大缩小的功能,但是要嵌入到swt中,问题就是嵌入后鼠标滚动事件消失,AWT组件是无法自行接收鼠标滚轮事件尝试各种方法均未找到合适的解决方法,这可能是用这种方式后的一个bug。先直接贴出我用的解决方法:
//AWT和SWT框架联系在一起的桥梁
final Composite container = new Composite(parent ,SWT.EMBEDDED);
Frame frame = SWT_AWT.new_Frame(container);
java.awt.event.MouseMotionListener mlAwt = new MouseMotionListener() {
public void mouseMoved(MouseEvent e) {
container.getDisplay().asyncExec(new Runnable() {
public void run() {
container.forceFocus();
public void mouseDragged(MouseEvent e) {
container.addMouseWheelListener(new MouseWheelListener() {
public void mouseScrolled(final org.eclipse.swt.events.MouseEvent event) {
BPMClient.moseWheelListener(event.count);
EventQueue.invokeLater(new Runnable() {
public void run() {
System.out.println(&滚动事件传递滚动值,
这里根据event.count值判断是上下滚动&);
给相应的面板传递该事件,提醒AWT鼠标监听器添加到所有被添加进了AWT框架的孩子
bpmPanel.graphComponent.getGraphControl().addMouseMotionListener(mlAwt);
&此解决方法目前只适合在windows平台下运行。
注明:本文章属于转载,仅供行业人员学习交流使用,文章版权属于原创作者,在此向原创者致敬,感谢原创作者为大家学习交流提供精品内容。
站方声明:IThao123是为广大互联网从业者免费提供学习交流的平台,如果侵犯了原创著作权,请联系站方删除,给你带来不便,深表歉意。7621人阅读
linux命令(10)
如何设置在vim中,鼠标可以控制光标快速定位?
:set mouse=a
长久设置,在~/.vimrc中添加
set mouse=a
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:899818次
积分:8728
积分:8728
排名:第1930名
原创:102篇
转载:163篇
评论:66条
(1)(4)(1)(1)(1)(4)(1)(3)(3)(2)(3)(3)(9)(7)(10)(15)(5)(2)(2)(1)(21)(11)(3)(7)(13)(11)(8)(4)(12)(19)(11)(22)(1)(2)(3)(20)(7)(13)

我要回帖

更多关于 swt table条件变色 的文章

 

随机推荐