2012-10-05 29 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