FXMLでノードを参照するには

提供: tknotebook
2015年12月30日 (水) 03:00時点におけるNakamuri (トーク | 投稿記録)による版

移動: 案内検索

メインページ>コンピュータの部屋#JavaFX>JavaFX Tips


FXMLの中であるノードが別のノードを参照する場合があります。 例えば Label コントロールの labelFor プロパティは別のノードを参照します。

labelFor プロパティは Labelノードのニーモニック(下線が引かれた文字)がキーボードから入力された場合、 指定されたノードにフォーカスを移すための使われるプロパティです。

やり方は簡単で、まず参照されるノードに fx:id 属性を付けます。

<TextField fx:id="test" layoutX="226.0" layoutY="72.0" />

参照する側のノードの属性では $test というように fx:id属性の値に $ を付けた文字列を使って、ノードを参照します。

<Label labelFor="$test" layoutX="52.0" layoutY="67.0" mnemonicParsing="true" text="_test" />

尚、何故か l;abelFor属性は SceneBuilder ではサポートされていません。直接 FXML を編集してください。