2016-04-12 7 views
0

私はChoiceBox項目選択を検出しようとしています。私はthis postを読んで、私はそれを行うことが可能であることを知って、この方法:JavaFXのChoiceBox EventHandling

ChoiceBox項目の選択によって処理されます。上記のコードを確認ChoiceBoxクラスがために

choiceBoxObject.getSelectionModel().selectedIndexProperty().addListener(myChangeListenerObject) 

も私は、ドキュメントにこの文を見ましたListViewコントロール とコンボボックス

別の解決策と同様にselectionModelのは、私の心に来て、私はそれに何か問題があると思っていましたか?なぜ誰もこのように言及していませんか?これら二つのアプローチの違いは何ですか?

choiceBoxObject.valueProperty().addListener(myChangeListenerObject); 

答えて

0

ありvaluePropertyを使用してと間違って何もいない、と単純に選択した値の変化に反応するため、実際に、それはおそらく有利なソリューションです。

ドキュメントはちょうど項目の選択の基礎となる完全SelectionModelがあることを示すされます。これは、単純に選択されているものを知っているよりもはるかに豊かなAPIを持っている:あなたはプログラムで利用できる豊富なAPIがある選択を変更するために必要なのであればselectNext()selectFirst()方法、などなどがあります。また、ドキュメントで指摘したように、このためのユースケースは、(非常に)まれである可能性が高いものの、あなたも、異なる実装で選択モデルを置き換えることができます。