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模块化面板到下一个我无法完全获得的交互。
在此先感谢。