我正在尝试在页面上获取所有组件并设置它们的约束。所有组件都有 id 。我尝试使用 IdSpace 来获取页面上的所有 id 但如何获取 Idspace ?我用了
Window main ;
Page page ;
page = main.getPage(); // This is null
如何获得身份空间?
我正在尝试在页面上获取所有组件并设置它们的约束。所有组件都有 id 。我尝试使用 IdSpace 来获取页面上的所有 id 但如何获取 Idspace ?我用了
Window main ;
Page page ;
page = main.getPage(); // This is null
如何获得身份空间?
你在哪里写的代码?
我的建议是将作曲家应用到根组件,并迭代里面的所有组件。
这是一个可运行的示例,用于迭代所有标签的所有组件和设置值。 http://zkfiddle.org/sample/36t45ag/1-Iterate-all-the-components
代码在这里。
<window border="normal" title="hello" apply="pkg$.TestComposer">
<label ></label>
<vlayout>
<label ></label>
<label ></label>
<label ></label>
<div>
<label ></label>
<label ></label>
</div>
</vlayout>
</window>
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
iterate(comp);
}
public void iterate(Component comp){
/*
* do something for the component
*/
if(comp instanceof Label){
((Label)comp).setValue("Found label!");
}
List<Component> list = comp.getChildren();
for(Component child:list){
iterate(child);
}
}