setWidth(“*”)在CSS / SmartGWT中做了什么?

时间:2011-01-11 20:24:39

标签: css gwt smartgwt

我遇到过一些使用SmartGWT的遗留代码。我怀疑API也存在于标准GWT中。

widget.setWidth("*");

请记住,相同的代码有:

otherWidget.setWidth100();

我不知道CSS有类似的东西:

width: *;

所以...这段代码是合法的,如果是这样,它做了什么......或不是?!

提前致谢。

2 个答案:

答案 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%")

当您不想特别设置子面板的宽度时,基本上会使用它。您可以指定第一个子面板的粗略宽度,并自动设置第二个子节点的宽度。