我有一个 AbsolutePanel 和不同的小部件(按钮,图像,标签,e.t.c。)。是否可以获取集合或数组或某些类型的所有小部件,例如 - Image?
答案 0 :(得分:6)
你走了:
我们可以使用iterator.
Iterator<Widget> arrayOfWidgets = abslPanel.iterator();
while (arrayOfWidgets.hasNext()){
Widget ch = arrayOfWidgets .next();
if (ch instanceof Button) {
//Do something (in your case make an arraylist of your objects)
}
}
答案 1 :(得分:2)
如果你将gwtquery添加到你的项目中,这很容易:
List<Image> allImages = $("*", myPanel).widgets(Image.class);
即使您可以使用复杂的CSS选择器来执行更精细的歧视:
List<MyWidget> allMyWidgets = $("*:nth-child(even)", myPanel).widgets(MyWidget.class);