GWT中的Horizo​​ntalPanel

时间:2014-01-24 00:46:45

标签: gwt gwt2

我在Label中添加了ListBoxHorizontalPanel作为网页的标题。当我设置标签的左边距和列表框的右边距并更改窗口的大小时,它们的位置会发生变化。如果有人能帮助我解决这个问题,那就太好了。

    HorizontalPanel hp = new HorizontalPanel();
    Label label = new Label("Test Program");
    label.addStyleName("test-label");

    ListBox listbox = new ListBox();
    listbox.addItem("test1");
    listbox.addItem("test2");       
    listbox.addStyleName("test-listbox");

    hp.add(title);        
    hp.add(language);        

CSS文件:

   .test-label{float:left}
   .test-listbox{float:right}

1 个答案:

答案 0 :(得分:0)

我尝试过将HorizontalPanel设置为100%width的代码。我尝试在元素中添加边距,它们工作正常。请注意我怀疑你的消失行为可能​​是由于流氓添加

**hp.add(title);**        
**hp.add(language);**  

您的声明有labellistbox,而您正在添加titlelanguage

示例代码:

    HorizontalPanel hp = new HorizontalPanel();
    hp.addStyleName("testWidth");
    Label label = new Label("Test Program");
    label.addStyleName("test-label");

    ListBox listbox = new ListBox();
    listbox.addItem("test1");
    listbox.addItem("test2");
    listbox.addStyleName("test-listbox");

    hp.add(label);
    hp.add(listbox);

    RootPanel.get().add(hp);

CSS

.test-label {
    float: left;
    margin-left: 10px;
}

.test-listbox {
    float: right;
    margin-right: 10px;
}
.testWidth{
    width: 100%;
}