這裏是設置:我有一個頁面,我們將其稱爲A,其中包含一個按鈕,我們將其稱爲B.當用戶點擊B時,會打開一個對話框(C)。 C一旦創建,它就對A或B一無所知。如何讓ClickHandler在GWT中的按鈕上被兩次調用?
現在,如果用戶雙擊B,則會創建2個或多個Cs,這是不可取的。由於C對B一無所知,我不能禁用該按鈕,因爲如果用戶在C中按下取消,它們將返回到A但B仍然被禁用。我也無法保存頁面ID並限制C以這種方式創建,因爲如果用戶打開C,點擊取消但是決定再次打開C,他們必須能夠做到這一點。
無論連續點擊多少次,我如何停止允許打開多個對話框的按鈕?
編輯
我簡化了太多在上面的描述,所以這裏的深入瞭解更。我的Toolbar
班有一個名爲reference
的按鈕。當單擊reference
時,會在完全獨立的類ItemPicker
上調用函數,該函數創建並顯示對話框CreateConversation
。所以,回到我原來的情景中,B對C沒有任何瞭解。我意識到這是錯綜複雜的,但這不是我現在可以改變的。
不知何故,我需要停止reference
撥打第二個電話至ItemPicker.createAndShow()
,如果它多次點擊並且CreateConversation
對話框已被打開。此外,Toolbar
類中沒有ItemPicker
的具體實例; createAndShow()
是一種靜態方法。
爲了簡單的補充,不要編輯太多:A也沒有對C的具體引用。這是我對他們關係的描述所暗示的,但我寧願明確一點,避免混淆。 –
我沒有忘記這個問題。過去幾周發生了很多事情。我會在早上(美國山區時間)測試@Thomas Broyer最近的建議。 –