Nadzori JavaFX: Pregled ChoiceBox-a

The

ChoiceBox
razreda se uporablja za ustvarjanje kontrolnika, ki uporabniku predstavi nekaj možnosti izbire s spustnega seznama. Uporabnik lahko izbere le eno od možnosti. Če se spustni seznam ne prikaže, je trenutno izbrana možnost samo vidna. Možno je nastaviti
ChoiceBox
predmet, da sprejme veljavno možnost kot veljavno izbiro.

Uvozna izjava

uvoz javafx.scene.control. ChoiceBox;

Konstruktorji

The

ChoiceBox
razred ima dva konstruktorja, enega za prazen seznam elementov in enega z danim naborom elementov:
// Ustvari prazen ChoiceBox
ChoiceBox izbire = nov ChoiceBox ();
// Ustvari ChoiceBox s pomočjo zbirke, ki jo je mogoče opaziti
ChoiceBox cboices = nov ChoiceBox (FXCollections.observableArrayList ("Apple", "Banana", "Orange", "Breskev", "Hruška", "Jagoda"));

Uporabne metode

Če se odločite ustvariti prazno

ChoiceBox
predmete lahko dodate pozneje z uporabo
setItems
metoda:
choices.setItems (FXCollections.observableArrayList ("Apple", "Banana", "Orange", "Breskev", "Hruška", "Jagoda"));

Če želite izvedeti, kateri predmeti so v

ChoiceBox
lahko uporabite
getItems
metoda:
instagram viewer
Možnosti seznama = choices.getItems ();

Če želite izbrati trenutno izbrano možnost, uporabite

setValue
metoda in ji ponudite eno od možnosti:
choices.setValue ("Prva");

Če želite pridobiti vrednost trenutno izbrane možnosti, uporabite ustrezno

getValue
metoda in jo dodelite a Vrvica:
Možnost niza = choices.getValue (). ToString ();

Obravnava dogodkov

Da bi prisluhnili dogodkom za a

ChoiceBox
objekt,
IzborModel
se uporablja. The
ChoiceBox
uporablja
SingleSelectionModel
razreda, ki dovoljuje izbrati samo eno možnost. The
izbrana lastnostIndexProperty
nam omogoča, da dodamo
Spremeni poslušalca
. To pomeni, da se vsakič, ko se izbrana možnost spremeni v drugo možnost, zgodi sprememba. Kot je razvidno iz spodnje kode, se posluša sprememba in ko se pojavi, lahko prej določeno možnost in novo izbrano možnost določimo:
končne možnosti seznama = choices.getItems ();
choices.getSelectionModel (). selectedIndexProperty (). addListener (nov ChangeListener () {
@Override javna ničnost spremenjena (ObservableValue ov, Število starih Izbrano, Število novo Izbrano) {
System.out.println ("Stara izbrana možnost:" + options.get (oldSelected.intValue ()));
System.out.println ("Nova izbrana možnost:" + options.get (newSelected.intValue ()));
}
});

Prav tako je mogoče prikazati ali skriti seznam možnosti, ne da bi uporabnik moral klikniti

ChoiceBox
predmeta z uporabo
kažejo
in
skriti
metod. V spodnji kodi se predmet Button uporablja za priklic metode show a
ChoiceBox
predmet, ko
Gumb
klikne:
// Za preprosto postavitev elementov uporabite regalno ploščo
StackPane root = nov StackPane ();
// Ustvari gumb za prikaz možnosti v ChoiceBoxu
Gumb showOptionButton = nov gumb ("Prikaži možnosti");
root.getChildren (). dodaj (showOptionButton);
root.setAlignment (showOptionButton, Pos. št. TOP_CENTER);
// Ustvarite ChoiceBox z nekaj možnostmi
končne ChoiceBox izbire = nov ChoiceBox (FXCollections.observableArrayList ("Apple", "Banana", "Orange", "Breskev", "Hruška", "Jagoda"));
root.getChildren (). dodaj (izbire);
// S pomočjo ActionEvent pokličite metodo prikazovanja ChoiceBox
showOptionButton.setOnAction (nov EventHandler () {
@Override javno ravnanje za ničnost (ActionEvent e) {
izbire.prikaži ();
}
});
// Nastavite sceno in sprostite sceno.
Scena scene = new Scene (root, 300, 250);
PrimaryStage.setScene (scena);
PrimaryStage.show ();

Če želite izvedeti več o drugih JavaFX-ovih kontrolah, si oglejte Nadzori uporabniškega vmesnika JavaFX.