2012-10-05 30 views
0

我需要添加一个关键听众到我的TitelAreaDialog有没有解决方案来做到这一点?将一个关键听众添加到TitleAreaDialog

+0

参与对话的哪一部分?按键时会发生什么? – Baz

+0

整个对话框。将会有一个条形码扫描 – GoodSpeed

+0

-1,因为“这个问题没有显示任何研究工作”。但欢迎来到StackOverflow,我希望你觉得它很有用。 – ANeves

回答

6

您可以通过使用添加ListenerDisplay

Listener listener = new Listener() { 
    public void handleEvent(Event event) { 
     System.out.println(event.character); 
    } 
} 
getShell().getDisplay().addFilter(SWT.KeyDown, listener); 

这将输出所有按键而不消耗的事件,即基本部件仍然会注册的事件。


记得在Dialogclose()方法再次将其删除:

@Override 
public boolean close() 
{ 
    getShell().getDisplay().removeFilter(SWT.KeyDown, listener); 
    super.close(); 
} 
+0

非常感谢,这正是我需要的! – GoodSpeed