我有一个RCP应用程序,我正在创建一个调用复合实例的视图。现在我的问题是我想在屏幕上显示视图/复合时触发一个事件。
我尝试使用addFocusListner(),addMouseTrackListener(),addMouseListner()
,但不幸的是,当我将鼠标指针移动到视图周围时,没有人获得控件。我们有什么办法可以解决它吗?
答案 0 :(得分:0)
只需抓住用于创建视图的控件并在其上添加选择侦听器。
例如,如果使用treeViewer创建该视图:
treeViewer.setSelection(new StructuredSelection(element),true);
确保按此treeViewer.getControl.setFocus();
答案 1 :(得分:0)
如果要在视图处于焦点/启动后触发事件,则应该向该视图添加一个侦听器,例如IPartListener2
,以便创建一个类并实现IPartListener2
接口。您将获得更多信息here
此外,如果您只想使用鼠标事件,则需要将MouseMoveListener
添加到视图中,以便当mouseMove
上的鼠标指针调用时。
例如control.addMouseMoveListener(this);