Vaadin:テーブルの内容を更新した後、選択した行を設定する必要があります。 私は、さまざまな顧客を含むコンボボックスを持っています。 さらに2つのテーブルがあり、最初はメインカテゴリを示し、セカンドはサブカテゴリを示します。 最初に、顧客は選択されず、メインカテゴリが表示されます。サブカテゴリは表示されません。Vaadinはテーブルの選択行を設定します
私は、カテゴリをクリックしてください(例えば、製品を言うことができます!)、サブカテゴリテーブルはappersとサブカテゴリーを示しています。 空である顧客を特定の顧客に変更すると、両方のテーブルがフィルタリングされますが、製品選択は失われます。前に選択したものに選択肢を設定する必要があります。
私はantoherクラスからSQL-コンテナオブジェクトとしてテーブルの内容を取得します。 getMainCatsメソッドの戻りは、このように作成され
mainCatTable = new Table();
...
mainCatTable.setContainerDataSource(source.getMainCats());
//My Checkboxbutton
Combobox custBox = new ComboBox();
//Get the customers from the Database
custBox.setContainerDataSource(source.getCustomers());
custBox.setItemCaptionPropertyId("Customers");
custBox.addValueChangeListener(new ValueChangeListener() {
public void valueChange(ValueChangeEvent valueEvent) {
//Here I need to store the old selection, before i update the mainCat table to a specific customer
mainCatTable.setContainerDataSource(source.getMainCats(currentCustomer));
//Here I need something to set the selected row to the previous value
subCatTable.setContainerDataSource(source.getSubCats());
}
});
SQL-コンテナは:
FreeformQuery subcatExtractionQuery = new FreeformQuery("select customerName from customers", connectionPool);
return new SQLContainer(subcatExtractionQuery);
問題があり、tはさまざまな方法を試してみましたが、それはうまくいきませんでした。 は、この私の試みだった: https://vaadin.com/forum/#!/thread/1819417/1819416 しかし、彼らはindexcontainerを使用しますが、私にはありません。
誰もがインデックスコンテナなしでこれを行う方法を説明できますか?
「インデックスされていないコンテナ」はどのようなコントローラですか?あなたはこれについて少し具体的になりますか? – mico
申し訳ありません、今私は情報を追加しました。これはあなたが意味することですか? – Tobi123