FXMLでComboBoxの選択肢を列挙型するには

提供: tknotebook
2016年6月19日 (日) 13:04時点におけるNakamuri (トーク | 投稿記録)による版

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索

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

ComboBoxの選択肢を 列挙型のすると、ComboBoxのvalueプロパティを直接その列挙型の プロパティにバインドできるので便利な場合があります。

BlurTypeを列挙型とすると、FXML で、ComboBoxをこんな具合に宣言すればOKです。

<ComboBox>
  <value>
    <BlurType fx:value="THREE_PASS_BOX"/>
  </value>
  <items>
    <FXCollections fx:factory="observableArrayList">
      <BlurType fx:value="ONE_PASS_BOX" />
      <BlurType fx:value="TWO_PASS_BOX" />
      <BlurType fx:value="THREE_PASS_BOX" />
      <BlurType fx:value="GAUSSIAN" />
    </FXCollections>
  </items>
</ComboBox>

fx:value 属性はノードのクラスの valueOfメソッドで文字列からインスタンスの作成を指示します。