我们在SWT中启动视图后如何触发事件

时间:2017-09-11 08:55:09

标签: swt eclipse-rcp composite

我有一个RCP应用程序,我正在创建一个调用复合实例的视图。现在我的问题是我想在屏幕上显示视图/复合时触发一个事件。

我尝试使用addFocusListner(),addMouseTrackListener(),addMouseListner(),但不幸的是,当我将鼠标指针移动到视图周围时,没有人获得控件。我们有什么办法可以解决它吗?

2 个答案:

答案 0 :(得分:0)

只需抓住用于创建视图的控件并在其上添加选择侦听器。

例如,如果使用treeViewer创建该视图:

treeViewer.setSelection(new StructuredSelection(element),true);

确保按此treeViewer.getControl.setFocus();

进行选择

答案 1 :(得分:0)

如果要在视图处于焦点/启动后触发事件,则应该向该视图添加一个侦听器,例如IPartListener2,以便创建一个类并实现IPartListener2接口。您将获得更多信息here

此外,如果您只想使用鼠标事件,则需要将MouseMoveListener添加到视图中,以便当mouseMove上的鼠标指针调用时。 例如control.addMouseMoveListener(this);