テーブルビューに数字を自動的に挿入しようとしています。JavaFX 8:自動的にTableViewの行に番号を付ける
私は同様の構造を持つ2つのテーブルを持っており、アイデアは、ボタンクリックでtableAからtableBに選択項目をコピーすることです。
合計列:3
RowCol =番号を表示することになって(Modelクラスから来る)を自動的
TestCol =テスト名(Modelクラスから来る)
ModCol =モジュール
私はこの出くわしましたtableAの自動番号付けを解決するための質問。
auto numbered table rows (javafx)
コード:これはにtableAのためにうまく機能していると私はテーブルBのために同じコードを使用しますが、私は次のような問題を取得し
tableARowCol.setCellValueFactory(cellData -> new ReadOnlyObjectWrapper<Number>(
tableA.getItems().indexOf(cellData.getValue()) + 1));
tableATestCol.setCellValueFactory(cellData -> cellData.getValue().testCaseNameProperty());
tableAModCol.setCellValueFactory(cellData -> cellData.getValue().moduleNameProperty());
BTNクリックにデータを追加するとき(自動番号が正しく更新されていません):
、テーブルBの行数は、1,2,3,3,3,2,7として表示されています。
Iは、以下たときは、この出力された:
-
にtableAから
- 添加行1
- 添加行2
- にtableAから追加された行3再度にtableAから追加された行2
- にtableA 3Xからの
- は、私が問題とどのように私はそれを修正することができますように思わ知りたいにtableAから
を行10を追加しました。正直言って、自動ナンバリング行の行を完全に理解していません。
これまでに何が起こっているかの流れ:
- 選択項目がにtableA
- からボタンを追加クリックしてBに追加[>>]
- は、項目を追加した観察可能なリスト(モデルに追加されます
-
:)とXMLファイル
言及する価値に保存
- XMLから項目をロードして、それを表Bに移入するリスナーがもう1つあります。項目がXMLからロードされると、番号付けは正しいです。今回はXMLからロードされた同じデータです。通知tableB番号は正しいです。
TABLEB行番号付けのためのコード:助けを事前に
tableBRowCol.setCellValueFactory(cellData -> new ReadOnlyObjectWrapper<Number>(
tableB.getItems().indexOf(cellData.getValue()) + 1));
tableBTestCol.setCellValueFactory(cellData -> cellData.getValue().testCaseNameProperty());
tableBModCol.setCellValueFactory(cellData -> cellData.getValue().moduleNameProperty());
ありがとう!
カスタム 'RowFactory'または' CellFactory'はありますか? – Itai
こんにちは、あなたが習慣の意味を説明できますか?ありがとう!私が理解する限り、私は持っていません。 – iamkenos