JavaFX vadīklas un ComboBox

ComboBox klase izveido vadīklu, kas ļauj lietotājam izvēlēties opciju nolaižamajā opciju sarakstā. Nolaižamais saraksts parādās, kad lietotājs noklikšķina uz ComboBox vadības ierīces. Kad opciju skaits pārsniedz nolaižamā loga lielumu, lietotājs var ritināt uz leju, lai skatītu citas iespējas. Tas atšķiras no ChoiceBox ko galvenokārt izmanto, ja izvēles skaits ir salīdzinoši neliels.

Importa paziņojums

javafx.scene.control. ComboBox

Konstruktori

ComboBox klasē ir divas konstruktori atkarībā no tā, vai vēlaties izveidot tukšu ComboBox objektu vai objektu, kas apdzīvots.

Lai izveidotu tukšu kombinēto lodziņu

ComboBox augļi = jauns ComboBox ();

Lai izveidotu ComboBox objektu un aizpildītu to ar virknes vienumiem no ObservableList

ObservableList fruit = FXCollections.observableArrayList ( 
"Ābols", "Banāns", "Bumbieris", "Zemene", "Persiks", "Apelsīns", "Plūme");
ComboBox augļi = jauns ComboBox (augļi);

Noderīgas metodes

Ja izveidojat tukšu ComboBox objektu, varat izmantot metodi setItems. Pārejot no novērojamā objektu saraksta, vienumi tiks iestatīti kombinētajā lodziņā.

instagram viewer
ObservableList fruit = FXCollections.observableArrayList ( 
"Ābols", "Banāns", "Bumbieris", "Zemene", "Persiks", "Apelsīns", "Plūme");
augļi.iesākumi (augļi);

Ja vēlāk vēlaties pievienot vienumus ComboBox sarakstam, varat izmantot getItems metodes addAll metodi. Vienumi tiks pievienoti opciju saraksta beigās:

augļi.getItems (). addAll ("Melone", "Cherry", "Blackberry");

Lai pievienotu opciju noteiktai vietai ComboBox opciju sarakstā, izmantojiet getItems metodes pievienošanas metodi. Šī metode ņem indeksa vērtību un vērtību, kuru vēlaties pievienot:

augļi.getItems (). pievieno (1, "Citrons");

Piezīme: ComboBox indeksa vērtības sākas ar 0. Piemēram, augstāk norādītā "Citrona" vērtība tiks ievietota ComboBox opciju sarakstā 2. pozīcijā, jo nodotais indekss ir 1.

Lai iepriekš atlasītu opciju ComboBox opciju sarakstā, izmantojiet metodi setValue:

fruit.setValue ("Ķirsis");

Ja setValue metodei nodotā ​​vērtība nav sarakstā, tad vērtība joprojām tiks izvēlēta. Tomēr tas nenozīmē, ka šī vērtība ir pievienota sarakstam. Ja lietotājs pēc tam izvēlas citu vērtību, sākotnējā vērtība vairs nebūs atlasāmajā sarakstā.

Lai iegūtu pašlaik atlasītā vienuma vērtību ComboBox, izmantojiet metodi getItems:

Izvēlētā virkne = fruit.getValue (). ToString ();

Lietošanas padomi

Opciju skaits, ko parasti uzrāda ComboBox nolaižamajā sarakstā, ir desmit (ja vien ir mazāk nekā desmit vienības, tādā gadījumā tas pēc noklusējuma norāda vienību skaitu). Šo numuru var mainīt, izmantojot metodi setVisibleRowCount:

fruit.setVisibleRowCount (25);

Atkal, ja vienumu skaits sarakstā ir mazāks par vērtību, kas iestatīta metodē setVisibleRowCount, ComboBox noklusējumā parādīs vienību skaitu ComboBox nolaižamajā sarakstā.

Notikumu vadīšana

Lai izsekotu vienumu atlasi ComboBox objektā, varat izmantot vietnes addListener metodi SelectItemProperty metode SelectionModel, lai izveidotu ChangeListener Tas uzņems izmaiņu notikumus ComboBox:

final Label selectionLabel = jauna etiķete ();
augļi.getSelectionModel (). selectedItemProperty (). addListener (
jauns ChangeListener () {
mainīts sabiedrības tukšums (ObservableValue ov,
Stīgas old_val, stīgas new_val) {
selectionLabel.setText (new_val);
}
});