GWT這裏是新手...使用UIBinder佈局GWT面板之間的談話
我正在使用UIBinder的方式來佈局一個應用程序,有點在GWT郵件示例的樣式。該應用程序開始在OnModuleLoad()方法內添加到RootLayoutPanel的DockLayoutPanel。該DockLayoutPanel有一個靜態的北方和南方靜,使用自定義窗口小部件中心等被定義:
public class BigLayoutWidget extends ResizeComposite {
...
}
此自定義窗口小部件佈局使用BigLayoutWidget.ui.xml,這又由TabLayoutPanel的(3個標籤頁) ,其中第一個包含一個SplitLayoutPanel,分爲WEST(Shortcuts.ui.xml)和CENTER(Workpanel.ui.xml)。快捷方式又由一個StackLayoutPanel和3個堆棧組成,每個堆棧都在自己的ui.xml文件中定義。
我想單擊某個快捷方式的單個堆棧中的事件以更改Workpanel的內容,但到目前爲止,我只能夠在同一個類中操作小部件。使用最簡單的情況下,我無法在快捷方式中單擊按鈕來清除Workpanel的內容或使WorkPanel不可見。
的幾個問題...
- 是階級的ResizeComposite正確的類型來擴展這個?我遵循從TopPanel,MailList等的Mail例子的方法,所以也許不是?
- 我該如何使這些點擊操縱他們不居住的面板的內容?
- 聽衆不再推薦處理事件嗎?我認爲我在編譯過程中看到過一些地方使用了ClickHandlers,並且點擊監聽器「訂閱」方法已被棄用(我大多使用@UiHandler註釋)
- 是否有一種簡單的方法來獲取特定元素的句柄在我的應用/頁面? (應用UI.XML文件中的「ID」字段會生成棄用警告)。我正在尋找像document.getElementById()這樣的東西,它讓我能夠處理特定的元素。如果存在,我如何設置元素上的句柄/ ID,然後如何通過名稱/ ID調用該元素?
請注意,我有佈局本身很好釘;這是從一個ui.xml模塊化面板到下一個我無法完全獲得的交互。
在此先感謝。