【问题标题】:Why does GWT Designer with UiBinder mess up this simple dialog?为什么带有 UiBinder 的 GWT Designer 会搞乱这个简单的对话框?
【发布时间】:2012-11-13 21:09:26
【问题描述】:

我正在使用 Eclipse 3.7、GWT 2.5、Java 1.6 和最新的 GPE。我已经使用了很多 UiBinder,现在我们正在研究将 GWT Designer 用于我们应用程序的下一个版本。我创建了一个基本的 Web 应用程序项目并让它生成它的示例代码。然后新建->GWT Designer->GWT UiBinder->对话框。然后我添加了一个按钮来生成弹出窗口,以及对话框的大小和标题。这是小部件代码:

public class TestPopup extends DialogBox {

    private static final Binder binder = GWT.create(Binder.class);
    @UiField FlowPanel flowPanel;

    interface Binder extends UiBinder<Widget, TestPopup> {
    }

    public TestPopup() {
        setWidget(binder.createAndBindUi(this));
        setTitle("Test Popup Title");
        setPixelSize(400, 300);
    }

}

以及对应的*ui.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
    <ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder' xmlns:g='urn:import:com.google.gwt.user.client.ui'>
        <ui:style>
            .panel {
                padding: 5px;
                border: 5px solid cornflowerblue;
                background-color: Menu;
            }
        </ui:style>

        <g:FlowPanel styleName="{style.panel}" ui:field="flowPanel" width="100%" height="100%"/>
    </ui:UiBinder>

这就是结果。谁能解释一下这些工具如何破解一个简单的配置:

【问题讨论】:

    标签: gwt uibinder gwt-designer


    【解决方案1】:

    这是一个已知的issue。当您尝试专门设置它们的大小时,DecoratorPanel 和 DecoratedPopupPanel 小部件会出现这样的问题。不要指定对话框的大小。相反,指定 DialogBox 的子 Widget 的大小,DialogBox 应该与之匹配。

    【讨论】:

    • 感谢您的回答。那解决了它。对我来说这似乎很奇怪,这还没有解决。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-11
    相关资源
    最近更新 更多