ComboBox sınıfı, kullanıcının açılır seçenekler listesinden bir seçenek seçmesine izin veren bir denetim oluşturur. Kullanıcı ComboBox denetimini tıkladığında açılır liste görünür. Seçenek sayısı açılır pencerenin boyutunu aştığında, kullanıcı diğer seçeneklere doğru ilerleyebilir. Bu, ChoiceBox esas olarak, seçeneklerin sayısı nispeten küçük bir küme olduğunda kullanılır.
İthalat Beyanı
javafx.scene.control. Açılan kutu
Kurucular
ComboBox sınıfı iki kurucular boş bir ComboBox nesnesi mi yoksa öğelerle doldurulmuş bir nesne mi oluşturmak istediğinize bağlı olarak.
Boş bir Açılan Kutu Oluşturmak İçin
ComboBox meyvesi = yeni ComboBox ();
Bir ComboBox nesnesi oluşturmak ve bir ObservableList öğesinden String öğeleriyle doldurmak için
ObservableList meyveleri = FXCollections.observableArrayList (
"Elma", "Muz", "Armut", "Çilek", "Şeftali", "Portakal", "Erik");
ComboBox meyvesi = yeni ComboBox (meyveler);
Yararlı Yöntemler
Boş bir ComboBox nesnesi oluşturursanız, setItems yöntemini kullanabilirsiniz. Bir ObservableList nesnesi iletildiğinde, Combobox'taki öğeler ayarlanır.
ObservableList meyveleri = FXCollections.observableArrayList (
"Elma", "Muz", "Armut", "Çilek", "Şeftali", "Portakal", "Erik");
meyve.setÖğeler (meyveler);
Daha sonra ComboBox listesine öğe eklemek istiyorsanız getItems yönteminin addAll yöntemini kullanabilirsiniz. Bu, öğeleri seçenekler listesinin sonuna ekleyecektir:
fruit.getItems (). addAll ("Kavun", "Kiraz", "Böğürtlen");
ComboBox seçenek listesinde belirli bir yere bir seçenek eklemek için getItems yönteminin add yöntemini kullanın. Bu yöntem bir dizin değeri ve eklemek istediğiniz değeri alır:
fruit.getItems (). ekle (1, "Limon");
Not: ComboBox dizin değerleri 0'dan başlar. Örneğin, yukarıdaki "Limon" değeri, geçen dizin 1 olduğu için 2. konumda ComboBox seçenek listesine eklenir.
ComboBox seçenekler listesindeki bir seçeneği önceden seçmek için setValue yöntemini kullanın:
fruit.setValue ( "kiraz");
SetValue yöntemine iletilen değer listede yoksa, değer yine de seçilecektir. Ancak, bu değerin listeye eklendiği anlamına gelmez. Kullanıcı daha sonra başka bir değer seçerse, ilk değer seçilecek listede olmayacaktır.
ComboBox'ta seçili olan öğenin değerini almak için getItems yöntemini kullanın:
Seçili dize = fruit.getValue (). ToString ();
Kullanım İpuçları
ComboBox açılır listesi tarafından normal olarak sunulan seçenek sayısı on'dur (ondan az öğe olmadığı sürece, bu durumda varsayılan olarak öğe sayısıdır). Bu sayı setVisibleRowCount yöntemi kullanılarak değiştirilebilir:
fruit.setVisibleRowCount (25);
Yine, listedeki öğe sayısı setVisibleRowCount yönteminde ayarlanan değerden azsa, ComboBox varsayılan olarak ComboBox açılır menüsündeki öğe sayısını görüntüleyecektir.
Olayları İşleme
Bir ComboBox nesnesindeki öğelerin seçimini izlemek için öğenin addListener yöntemini kullanabilirsiniz. Bir ChangeListener oluşturmak için SelectionModel'in selectItemProperty yöntemi Değişiklik olaylarını alır ComboBox için:
final Label selectionLabel = yeni Etiket ();
fruit.getSelectionModel (). selectedItemProperty (). addListener (
yeni ChangeListener () {
kamu boşluğu değişti (ObservableValue ov,
String old_val, String new_val) {
selectionLabel.setText (new_val);
}
});