各行に乱数を生成する ZK グリッドがあります。各行は、チェックボックスと番号自体で構成されています。
チェックボックスがオンになっているすべての行を削除するボタンが必要でした。「削除」ボタンのイベント ハンドラは次のとおりです。
deleteButton.addEventListener(Events.ON_CLICK,
new EventListener() {
public void onEvent(Event evt) {
Iterator<Component> selected = randomTable.queryAll("row checkbox").iterator();
System.out.println("Deleted: ");
while (selected.hasNext()) {
Checkbox c = (Checkbox) selected.next();
if (c.isChecked()) {
System.out.print(c.getId());
System.out.println(" from row " + c.getParent().getId());
c.getParent().detach(); // detach the checked row
}
}
}
});
ただし、他のすべてのチェックされた行が見つかった場合でも、最初にチェックされた行のみが削除されます。
ZKはまだ初心者です。何か案は?