【JavaFX】テーブルを表示する方法(TableView)

JavaFXでテーブル(TableView)を表示する方法について記載します。

1. テーブルを表示する方法

テーブルを表示するには、TableViewクラス と 表示するデータを格納する独自クラスを使用します。

次の例では、データ格納用クラスとして商品クラス(Product)を使用しています。

実行例

Product.java(データ格納用の商品クラス)

SampleTableView( TableViewを表示するクラス )

1. TableViewに表示するデータを準備する

TableViewに表示するデータは、独自のデータクラスとして作成します(今回の例では、Productクラスが該当します)。

また、作成したデータは ObservableListインタフェースの変数( 以下 data )に追加します。
ObservableListを使用すると、リストにデータ追加など変更があった際に、TableViewに即時に反映することができます。

2. TableViewに列を作成する

列を作成するには、TableColumn<S,T>クラスを使用します。

型パラメータ <S,T>

S:列に表示するデータクラスを指定します。( Productクラス )
T:列に表示するデータクラスのフィールドの型を指定します。

列名は TableColumnのコンストラクタで指定できます。

また、価格列のようにネストした列を作成することもできます。

親である価格列に、子の円・ドル列を追加するとネストした列を作成することができます。

3. 列のソートを不可にする

列は初期状態でソート可能になっています。

ソート不可にするには、TableColumnクラスの setSortableメソッド で false を指定します。

4. TableViewに表示するデータを追加する

今回の例では、TableViewの下にデータ追加用のテキストエリアとボタンを用意しています。

ボタンがクリックされるとイベントが発火して、テキストエリアに入力した内容が TableViewに追加されます。

データの追加自体は、初期データの表示に使用した ObservableListインタフェースの変数 data に add メソッド を使用してデータを追加するだけで、TableViewの内容が更新されます。

2. コントロール一覧

テキストフィールド
パスワードフィールド
テキストエリア
ラベル
カレンダー
ボタン
チェックボックス
ラジオボタン
トグルボタン
選択ボックス
リストビュー
ツリービュー
コンボボックス
テーブルビュー
進捗バー
進捗インジケータ
メニューバー
メニューアイテム(複数選択可)
メニューアイテム(複数選択不可)
WebView
タブ
スプリットペイン
ツールバー
スライダー

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする