我對界面設計相當陌生,並且很難找出處理事件的最佳方式。在處理程序和(在這種情況下)按鈕導致事件在同一個類中的簡單情況下,這很好,我明白了。該處理器可以看到的按鈕,這樣就可以說:GWT事件處理最佳實踐
if (event.getSource() == myButton)
而且,該處理器是在同一類,所以它可以添加標籤到對象局部的類或類似。
問題:我不知道應該如何處理處理程序和事件生成器處於不同類中的情況。
例如
從我的主佈局類創建並顯示自定義對話框。該對話框在其自己的類中實現。理想情況下,對話框會使用主佈局類中的處理程序(它實現ClickHandler),這很好,但我的應用程序有幾個不同的ClickEvents。我通過查看源代碼來區分它們。在這種情況下,按鈕在對話類中,所以我不能簡單地說:
if (event.getSource() == myDialogbutton)
as myDialogButton不在範圍內。
任何提示如何這應該工作,將不勝感激。
d
謝謝,但這並不能真正幫助我解決問題。作爲對象B的成員的按鈕無法與對象A的Click處理器實現中的event.getSource()進行比較。我能做的唯一事情就是將對象A的引用傳遞給對象B,然後在對象A中引入一個方法,我從對象B調用它,該對象現在也實現了ClickHandler。我希望事件能夠分配我可以使用的獨特名稱。 – dpwr