FXMLでChoiceBoxの選択肢を記述するには

提供: tknotebook
移動: 案内検索

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


ChoiceBox や ComboBox などのコントロールでは、選択肢を items プロパティに設定しなければなりませんが、FXMLで記述する場合は以下のように記述します。

<ChoiceBox value="One" >
    <items>
        <FXCollections fx:factory="observableArrayList">
            <String fx:value="One" />
            <String fx:value="Two" />
            <String fx:value="Three" />
        </FXCollections>
    </items>
</ChoiceBox>

この書き方は items プロパティに FXCollections型のインスタンスをセットすることを意味し、 FXCollections型のインスタンスはコンストラクタではなく、 FXCollections型の observableArrayList ファクトリメソッドで生成することを意味します。

詳細はFXMLの概要 を参照してください。

尚、FXMLに FXCollections タグを含めるには、FXMLの冒頭に

<?import javafx.collections.FXCollections ?>

が必要です。忘れないように。