gwt面板水平对齐不工作

gwt面板水平对齐不工作,gwt,dialog,alignment,panel,Gwt,Dialog,Alignment,Panel,我有一个如下所示的GWT对话框: public class FooDialog extends DialogBox { public FooDialog() { setText("Foo Dialog"); VerticalPanel outer = new VerticalPanel(); outer.setBorderWidth(3); outer.setSize("400px", "200px"); oute

我有一个如下所示的GWT对话框:

public class FooDialog extends DialogBox {

public FooDialog() {
        setText("Foo Dialog");
        VerticalPanel outer = new VerticalPanel();
        outer.setBorderWidth(3);
        outer.setSize("400px", "200px");
        outer.setHorizontalAlignment(HasAlignment.ALIGN_CENTER);
        outer.setVerticalAlignment(HasAlignment.ALIGN_MIDDLE);

        Button cancelButton = new Button("Cancel", new ClickHandler() {
      public void onClick(ClickEvent event) {
        hide();
      }
    });

        HorizontalPanel buttons = new HorizontalPanel();
        buttons.setBorderWidth(3);
        buttons.add(cancelButton);

        outer.add(buttons);

        setWidget(outer);
    }
}

由于某些原因,“按钮”面板不符合水平对齐设置;它粘在外部面板的左侧。但是,它确实遵守垂直对齐设置。有什么想法吗?谢谢

表不考虑父对象的水平对齐属性。相反,将子表的左右边距设置为“自动”

buttons.getElement().getStyle().setProperty(“marginLeft”、“auto”); buttons.getElement().getStyle().setProperty(“marginRight”、“auto”)


更多信息:

该对齐方式在GWT 1.7.1、托管模式浏览器和Chrome中运行。谢谢Matt!如果我想将按钮中的元素向右对齐呢?很好,谢谢。将页边距设置为“自动”也适用于ASP.NET面板控件内的表。