JavaFXのComboBoxとChoiceBoxの違いは何ですか?両方のクラスのJavadocからだけでは完全に明確ではありません。
一日の終わりには、実行時に動的に再入力できるドロップダウンコントロールが必要です(バックエンドにデータベースがあります)。アプリケーションのすべてのケースで、ドロップダウンメニューから1つの項目を選択するだけです。ユーザーは、表示されている画面からドロップダウンメニューにオプションを追加することもできません。
私の理解では、ComboBoxはユーザーがドロップダウンリストにアイテムを追加し、複数のアイテムを選択できるようにすることですが、JavadocからはComboBoxを私のニーズを満たす方法で設定できるように見えるので、交換可能だと思われますある程度。この場合、ComboBoxには実際に必要なオーバーヘッドよりも少し多くのオーバーヘッドがあると思いますが、ComboBoxだけがこの決定を考慮に入れることができるものは他にありますか?
編集
重要な違いについて自分の質問に答えたのではないかと思うので、2を区別する言及していない他の何かがありますか?
ComboBox
は cellFactory
をサポートします。これにより、各セルにアイテムを表示するための基本的に任意のUIが可能になります。 ChoiceBox
にはこの機能はなく、各セルにテキストを表示するだけです( converter
を使用して構成できます)。
http://docs.Oracle.com/javase/8/javafx/user-interface-tutorial/combo-box.htm#BABJCCIB コンボのカスタムセルファクトリの例については、16.5のリストを参照してください。ボックス。
ChoiceBox
はオプションの選択肢を示すアイデアです。ComboBox
はアイテムのリストを表示します。ChoiceBox
はComboBox
に似ていますが、ComboBox
は、表示するアイテムの数を10以上またはそれ以下に指定できるため、非常に長いリスト用ですが、ChoiceBox
にはすべてのオプションをリストするオプションがありません。外観のように。
短いChoiceBox、10個未満のリストの小さなセットの場合、より多くのComboBoxの場合
それは私の視点からの違いです。スタイリングに関しては、すべてをスタイリングできます。
コンボボックスコンボボックスは、ユーザーが次のいずれかを選択できるようにするユーザーインターフェイスの典型的な要素ですいくつかのオプション。コンボボックスは、選択ボックスとは異なり、ドロップダウンリストにスクロールを追加できるため、表示するアイテムの数が制限を超える場合に役立ちます。アイテムの数が特定の制限を超えていない場合、開発者はコンボボックスまたは選択ボックスのどちらがニーズに適しているかを判断できます。
Choice Boxこの章では、いくつかの選択肢をすばやく選択できるUIコントロールである選択肢ボックスについて説明します。オプション。
http://docs.Oracle.com/javafx/2/ui_controls/jfxpub-ui_controls.htm
機能によってComboBox
とChoiceBox
を簡単に区別できます。定義について見てみましょう。
JavaFX ComboBox
コントロールを使用すると、ユーザーは事前定義リスト選択肢からオプションを選択できます。または、事前定義された選択肢がどれとも一致しない場合は別の値を入力ユーザーが選択したい。
JavaFX ChoiceBox
コントロールを使用すると、ユーザーは定義済みリスト選択肢のみからオプションを選択できます。
上記の違いは別として:
setPromptText
でプロンプトを表示できます(ChoiceBoxはそのメソッドを提供しません)setVisibleRowCount
を使用して10行以上を表示できます(ChoiceBoxはそのメソッドを提供しません)