【JavaFX】トグルボタンを作成・イベントを登録する方法(ToggleButton)

JavaFXでトグルボタンの作成・イベントを登録する方法について記載します。

トグルボタンを作成・イベントを登録する方法

1. トグルボタンの作成

ボタンを作成するには、ToggleButton クラスを使用します。

構文

ToggleButton tbA = new ToggleButton(“ボタン名”);

実行例

2. イベントの登録

トグルボタンのグループにイベントを登録するには、addListener メソッドを使用します。

構文

ToggleGroup group = new ToggleGroup();
group.selectedToggleProperty().addListener( ChangeListener<Toggle> );

addListener メソッドの引数には、ChangeListenerインタフェースを実装したクラスを指定します。

実行例

トグルボタンをクリックすると、次のメッセージが表示されます。


ChangeListenerインタフェースを実装したクラスを使用してイベントを登録

上記の例では、ChangeListenerインタフェースを実装したクラスを使用してイベントを登録しましたが、次のようにラムダ式を使用してイベントを登録することもできます。

ラムダ式を使用してイベントを登録

3. イベントの登録( 発生元から任意の値を渡す )

2の例では、イベント発生時に渡される変数( newValue )を ToggleButtonクラスにキャストして発生元のトグルボタンを判別していました。

ToggleButton selectedTb = (ToggleButton)newValue;

クリックされたトグルボタンごとに、任意の値を保存する場合、ToggleButtonクラスのsetUserData メソッドを使用すると簡単にボタンごとの値を取得することができます。

ToggleButton.setUserData( 保存したい値 );
実行例

次の例では、ボタンAに10、ボタンBに20、ボタンCに30 という固有の値を設定し、クリック時に設定した値を取得・表示します。

トグルボタンをクリックすると、次のメッセージが表示されます。

4. enumを使用してトグルボタンを管理する方法

次の例では、enumを使用して各ボタンを管理します。
各ボタン要素をまとめて管理できるので、コードが読みやすくなると思います。

実行例

ボタンクリック時のアクションでも、enumを使用してどのボタンがクリックされたか判別できるためおすすめの方法です。

5. 任意のボタンを選択する方法

ToggleButtonクラスのsetSelectedメソッドを使用すると、任意のボタンを選択状態にすることができます。

・初期表示時のデフォルト選択肢を指定
・設定の内容を反映

などで使用できます。

構文

ToggleButton tbA = new ToggleButton(“ボタン名”);
tbA.setSelected(true); // true を指定すると選択状態になります

実行例

スポンサーリンク

シェアする

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

フォローする