我遇到过一些使用SmartGWT的遗留代码。我怀疑API也存在于标准GWT中。
widget.setWidth("*");
请记住,相同的代码有:
otherWidget.setWidth100();
我不知道CSS有类似的东西:
width: *;
所以...这段代码是合法的,如果是这样,它做了什么......或不是?!
提前致谢。
答案 0 :(得分:6)
在SmartGWT中.setWidth("*")
表示占用可用宽度的 rest 。例如,如果您有一个HPanel
有两个孩子,其中一个孩子有setWidth("10%")
,那么隐含地setWidth("*"
}的孩子将有90%的宽度。这允许您更改一个孩子的宽度,而无需更新其他setWidth
电话。
答案 1 :(得分:2)
请考虑您有一个有两个孩子的Panel
。现在,如果你为两个孩子设置setWidth("*")
,那么第一个孩子将获得所需的宽度,第二个孩子将获得剩下的任何东西。
如果您为第一个孩子设置了setWidth("60%")
而为第二个孩子设置了setWidth("*")
,那么第一个孩子将占据Panel宽度的60%,第二个孩子将获得剩余的40%。< / p>
.setWidth100();
和.setHeight100();
这些2使组件填充它所在的画布。这意味着设置宽度&amp;高度100%,分别相当于setWidth("100%")
和setHeight("100%")
。
当您不想特别设置子面板的宽度时,基本上会使用它。您可以指定第一个子面板的粗略宽度,并自动设置第二个子节点的宽度。