Gwt 将组合的宽度设置为其容器的百分比
我有两个组合小部件,它们都具有动态调整对象大小的功能 当我实例化一个复合小部件时,我希望它以百分比的形式填充它的容器,比如说80% 小部件中的每个对象都会增长,以适应组合的大小,但组合本身不会随着其容器的百分比而增长 这可能吗?我尝试了.setWidth()方法,但无法识别%asd作为参数Gwt 将组合的宽度设置为其容器的百分比,gwt,Gwt,我有两个组合小部件,它们都具有动态调整对象大小的功能 当我实例化一个复合小部件时,我希望它以百分比的形式填充它的容器,比如说80% 小部件中的每个对象都会增长,以适应组合的大小,但组合本身不会随着其容器的百分比而增长 这可能吗?我尝试了.setWidth()方法,但无法识别%asd作为参数 我没有在复合小部件类中设置大小 我有一个调用类,它实例化复合小部件,然后对新对象调用setWidth()方法 我将尝试你的方法,如果它有效,然后应用到我的问题。一旦我有更多的信息,我会再次发布 谢谢你的帮助
我没有在复合小部件类中设置大小 我有一个调用类,它实例化复合小部件,然后对新对象调用setWidth()方法 我将尝试你的方法,如果它有效,然后应用到我的问题。一旦我有更多的信息,我会再次发布
谢谢你的帮助:-)当然可以。复合setWidth()方法也可以识别%s。你能给我你正在使用的示例代码吗?请确保setWidth()方法的调用必须在复合的initwidget()调用之后
public class Widget1 extends Composite{
private VerticaPanel panel=new VerticalPanel();
public Widget1(){
initWidget(panel);
setWidth("80%");
panel.add(new Widget2());
}
}
public class Widget2 extends Composite{
private VerticaPanel panel=new VerticalPanel();
public Widget2(){
initWidget(panel);
setWidth("100%");
}
}
下面是我的测试组合类:
**class CompositePane extends Composite {
//Define a panel that contains everything
private VerticalPanel compositePanel = new VerticalPanel();
private Button button1 = new Button("Button1");
public CompositePane(){//Start StatusPane constructor
compositePanel.add(button1);
initWidget(compositePanel);
setWidth("100%");
addStyleName("compositePanel");
}//End of StatusPane constructor
}//End of StatusPane class**
以下是附加到此对象的我的样式,显示复合对象的边:
.compositePanel{
**border: 5px solid black;
}**
使用设定的像素值时,边框将按预期展开
当使用100%时,它紧紧地围绕着按钮,我需要它接触容器的外部边缘。谢谢。您要在此处添加此复合面板。setWidth(“100%”)方法使此CompositePanel使用它的父级宽度为100%。因此,在您的情况下,它的父级宽度较小。尝试以下示例。您将了解在代码中要执行的操作。现在,边框宽度将为800px
VerticalPanel parentPanel=new VerticalPanel();
parentPanel.setWidth("800");
parentPanel.add(new CompositePanel());
RootPanel.get().add(parentPanel);