代码之家  ›  专栏  ›  技术社区  ›  James Moore

为什么这个GWT DockLayoutPanel的对话框大小这么小?

  •  2
  • James Moore  · 技术社区  · 14 年前

    我已经使用gwt2.0.4生成了一个新的Web应用程序项目。我将onModuleLoad()代码替换为:

    public void onModuleLoad() {
        DockLayoutPanel dp = new DockLayoutPanel(Unit.EM);
        dp.addNorth(new Button("north search"), 4);
        dp.addSouth(new Button("Search"), 4);
        dp.addWest(new Button("west"), 4);
        dp.addEast(new Button("east"), 4);
    
        RootLayoutPanel.get().add(dp);
    }
    

    产生我认为是正确的东西;四个按钮,每边一个。但如果我试着把同样的东西放进这样的对话框:

    public void onModuleLoad() {
        DockLayoutPanel dp = new DockLayoutPanel(Unit.EM);
        dp.addNorth(new Button("north search"), 4);
        dp.addSouth(new Button("Search"), 4);
        dp.addWest(new Button("west"), 4);
        dp.addEast(new Button("east"), 4);
    
        DialogBox dlog = new DialogBox();
        dlog.add(dp);
        dlog.show();
    
    }
    

    我得到的是一个小对话框挤在右上角。按钮在那里,但它们只有几个像素宽。

    为什么?我做错什么了?对话框不应该有一些非常类似于普通窗口的东西吗?

    1 回复  |  直到 14 年前
        1
  •  5
  •   Nico Adams    14 年前

    DockLayoutPanel dp = new DockLayoutPanel(Unit.EM);
        dp.addNorth(new Button("north search"), 4);
        dp.addSouth(new Button("Search"), 4);
        dp.addWest(new Button("west"), 4);
        dp.addEast(new Button("east"), 4);
        dp.setSize("20em", "20em");
    
        DialogBox dlog = new DialogBox();
        dlog.add(dp);
        dlog.show();
    

    看看这是否有用!祝你好运!