JavaFX vadīklas: ChoiceBox pārskats

ChoiceBox
klase tiek izmantota, lai izveidotu vadīklu, kas lietotājam piedāvā dažas izvēles iespējas no nolaižamā saraksta. Lietotājam ir atļauts izvēlēties tikai vienu no iespējām. Ja nolaižamais saraksts netiek rādīts, tad pašlaik atlasītā opcija ir vienīgā redzamā. Ir iespējams iestatīt
ChoiceBox
objekts akceptēt nulles opciju kā derīgu izvēli.

Importa paziņojums

importēt javafx.scene.control. ChoiceBox;

Konstruktori

ChoiceBox
klasei ir divi konstruktori - viens tukšam priekšmetu sarakstam un otrs ar doto priekšmetu komplektu:
// Izveidojiet tukšu ChoiceBox
ChoiceBox izvēles = jauns ChoiceBox ();
// Izveidojiet ChoiceBox, izmantojot novērojamo sarakstu kolekciju
ChoiceBox cboices = jauns ChoiceBox (FXCollections.observableArrayList ("Apple", "Banana", "Orange", "Peach", "Bumbieris", "Strawberry"));

Noderīgas metodes

Ja izvēlaties izveidot tukšu

ChoiceBox
vienumus var pievienot vēlāk, izmantojot
kopas
metode:
options.setItems (FXCollections.observableArrayList ("Apple", "Banana", "Orange", "Peach", "Bumbieris", "Zemene"));

instagram viewer

Un, ja vēlaties uzzināt, kādi priekšmeti atrodas

ChoiceBox
Jūs varat izmantot
getItems
metode:
Saraksta opcijas = pasirinkumi.getItems ();

Lai izvēlētos pašlaik atlasīto opciju, izmantojiet

setValue
metodi un nodrošiniet to ar vienu no iespējām:
options.setValue ("Pirmais");

Lai iegūtu pašlaik izvēlētās opcijas vērtību, izmantojiet atbilstošo

getValue
metodi un piešķir to a Stīgu:
Virknes opcija = pasirinkumi.getValue (). ToString ();

Pasākumu vadīšana

Lai noklausītos pasākumus a

ChoiceBox
objekts,
Atlases modulis
tiek izmantots.
ChoiceBox
izmanto
SingleSelectionModel
klase, kas ļauj vienlaikus izvēlēties tikai vienu iespēju.
selectedIndexProperty
metode ļauj mums pievienot a
ChangeListener
. Tas nozīmē, ka katru reizi, kad izvēlētā opcija mainīsies uz citu opciju, notiks izmaiņas. Kā redzat no zemāk redzamā koda, tiek uzklausītas izmaiņas un, kad tās notiek, tiek izvēlēta iepriekš izvēlētā opcija un tikko izvēlētā opcija:
galīgās saraksta iespējas = pasirinkumi.getItems ();
options.getSelectionModel (). selectedIndexProperty (). addListener (jauns ChangeListener () {
@Override public void mainīts (ObservableValue ov, Number oldSelected, Number newSelected) {
System.out.println ("Old Selected Option:" + options.get (oldSelected.intValue ()));
System.out.println ("Jauna izvēlētā opcija:" + options.get (newSelected.intValue ()));
}
});

Iespēju sarakstu var arī parādīt vai paslēpt, lietotājam nenoklikšķinot uz

ChoiceBox
objektu, izmantojot
šovs
un
paslēpties
metodes. Zemāk esošajā kodā Button objekts tiek izmantots, lai izsauktu parādīšanas metodi
ChoiceBox
objekts, kad
Poga
ir noklikšķinājis:
// Vienkāršai vadības ierīču izkārtojumam izmantojiet kaudzīti
StackPane sakne = jauna StackPane ();
// Izveidot pogu, lai parādītu ChoiceBox opcijas
Poga showOptionButton = jauna poga ("Rādīt opcijas");
root.getChildren () .pievienot (showOptionButton);
root.setAlignment (showOptionButton, poz. TOP_CENTER);
// Izveidojiet ChoiceBox ar dažām iespējām
galīgā ChoiceBox izvēle = jauna ChoiceBox (FXCollections.observableArrayList ("Apple", "Banana", "Orange", "Peach", "Bumbieris", "Zemene"));
root.getBērni () .pievienot (izvēles);
// Izmantojiet ActionEvent, lai izsauktu ChoiceBox šova metodi
showOptionButton.setOnAction (jauns EventHandler () {
@Override public void handle (ActionEvent e) {
izvēlnes.show ();
}
});
// Iestatiet ainu un pārvietojiet skatuvi kustībā.
Ainas ainava = jauna aina (sakne, 300, 250);
PrimaryStage.setScene (aina);
PrimaryStage.show ();

Lai uzzinātu par citām JavaFX vadīklām, apskatiet JavaFX lietotāja interfeisa vadīklas.