Vaadin (6.7.4) を使用していますが、このテーブル(モーダル ウィンドウ上にあります)はビューを更新しません。
最初は生成された列で作成されましたが、テーブルの更新に問題があると読んだので、通常のテーブルに戻しましたが、まだ更新されていません。
Updatedata は、パネル上のボタン クリック イベントによって呼び出されます。
final Table table = new Table();
final IndexedContainer ic=new IndexedContainer();
public createTable(){
table.setImmediate(true);
table.setEnabled(true);
ic.addContainerProperty("Name", String.class, null);
ic.addContainerProperty("Edit", Button.class, null);
ic.addContainerProperty("Delete", Button.class, null);
table.setContainerDataSource(ic);
}
public void addItems(Table table) {
for (String s : createdNames) {
ic.addItem(s);
ic.getItem(s).getItemProperty("Name").setValue(s);
ic.getItem(s).getItemProperty("Edit").setValue("Edit");
ic.getItem(s).getItemProperty("Delete").setValue("Delete");
}
}
public void updateData() {
IndexedContainer c=(IndexedContainer) table.getContainerDataSource();
c.removeAllItems();
c.addItem("myname");
c.getContainerProperty("myname", "Name").setValue("Mr.X");
table.setContainerDataSource(c);
table.refreshRowCache();
table.requestRepaint();
System.out.println("see the output but no update on table");
}
編集:問題はこのコードに関するものではないことが判明しましたが、このクラスは2回インスタンス化されたため、異なるインスタンスがありました。私が更新しているものと私が見ているもの。