【发布时间】:2019-03-23 17:00:15
【问题描述】:
您好,我遇到了 GWT 客户端的问题,当小部件的父级(位于树的某处)使用 GWT LayoutPanel 或任何布局容器时,小部件未接收到事件。
这是一个带有简化代码的演示。
此代码有效:
LayoutPanel layoutPanel = new LayoutPanel();
layoutPanel.add(new SimplePanel());
layoutPanel.add(new Button("Button1"));
RootLayoutPanel.get().add(layoutPanel);
该按钮在悬停时突出显示,并且附加的 ClickHandler 接收事件。
但是下面的代码没有。唯一的变化是将 add() 反转为 layoutPanel 顺序:
LayoutPanel layoutPanel = new LayoutPanel();
layoutPanel.add(new Button("Button1"));
layoutPanel.add(new SimplePanel());
RootLayoutPanel.get().add(layoutPanel);
按钮被绘制,但没有发送任何事件,甚至 ':hover' 事件也没有通过。检查生成的 HTML 显示正在生成“按钮”标签。
我正在使用 GWT 2.8.2、Google Appengine 1.9.66 和 Java 8(为版本 2 和 Java8 JRE 配置的 appengine-web.xml)。
我有一个更复杂的 GUI 也有同样的问题,我只是把它归结为上面的例子来演示这个问题。
【问题讨论】:
标签: google-app-engine gwt