2015-02-24 58 views
0

我有一個捕獲鼠標事件的函數。在那裏我能得到參考組件,但是我沒有任何數據,以確定實際被按下哪些部件:確定鼠標事件上的swt小部件

@Override 
public void mouseUp(MouseEvent e) { 
    Control c = (Control) e.widget; 
} 

什麼是某種的ID添加到該插件的正確方法,我可以檢查此事件以確定按下了哪個小部件?

我試過使用setData()但我不知道這是正確的嗎?

widget.setData("myfield"); 

及更高版本:

if("myfield".equals(e.widget.getData)){ 
    // do something 
} 

回答

1

setData是通常的方式,但使用

Widget.setData("key", data); 

Object data = Widget.getData("key"); 

方法。其中「密鑰」是您的代碼所特有的。這將停止使用小部件數據與其他代碼的衝突。