データベースのレコードのデータを表示するテーブルビューがあります。
また、同じフィールドを表示するテーブル(追加のペイン) にないフィールドもあります (便宜上、簡単に並べ替えるためにテーブルに、便利に変更するために外側に)
そのような; テーブルにないフィールドを変更すると、それに応じてテーブルビューを変更する必要があります: change -> db update -> new data into the table
- 機能しません。ビューは「更新」されません (Microsoft 製品など)。
ハッキーな解決策が機能します:毎回テーブルを再作成して再度設定します(すべて:列、リスナーを構築し、選択したアイテムを設定し、既存の代わりにこの「新しい」テーブルを設定します)。(SOで提案された別の解決策、visible(false)/(true)を設定-機能しませんでした)。
そう言われれば、別の「解決策」を見つけました。変更された値をtable.fieldに直接設定しました。しかし、その後; 変更されたデータは変更済みとして表示されません。- 人間としてヘッダーにアクセスした場合のみ (ヘッダーをダブルクリックして並べ替えをトリガーします。最終的にビューが更新されます)
毎回テーブルを完全に再作成したくありません。だからこそ、私は「解決策」を使いたいのです。-しかし、人間としてヘッダーをダブルクリックする必要はありません。
そのような; SOの別の投稿で提案されているように、Fire-Eventを試しました。
Pane header = (Pane) MY_TABLE.lookup("TableHeaderRow");
// to simulate a double-click onto the 2nd table-column-header
Event.fireEvent(header.getChildren().get(1) ...
.. それは動作しません; しかし、どの「ノード」を「ロボクリック」しなければならなかったのかわかりません..
それはハッキーです。しかし、誰かが解決策を指摘できれば、私は感謝しています。.. :) plsは監視可能なリストなどを設定する解決策ではありません。私はそうしましたが、役に立ちませんでした。この「ハック」を実行したいだけです。毎回テーブルを再作成しないでください。
- コードによってトリガーされたときにビューの更新を提供する、おそらくプライベート API の javafx (Java 8) のテーブルのようなものがあった場合。教えてください:)
ありがとうございました!