A classe ComboBox cria um controle que permite ao usuário selecionar uma opção em uma lista suspensa de opções. A lista suspensa aparece quando o usuário clica no controle ComboBox. Quando o número de opções excede o tamanho da janela suspensa, o usuário pode rolar para baixo para mais opções. Isso difere do ChoiceBox que é usado principalmente quando o número de opções é um conjunto relativamente pequeno.
Declaração de importação
javafx.scene.control. Caixa combo
Construtores
A classe ComboBox possui dois construtores dependendo se você deseja criar um objeto ComboBox vazio ou um preenchido com itens.
Para criar uma caixa de combinação vazia
ComboBox fruit = new ComboBox ();
Para criar um objeto ComboBox e preenchê-lo com itens String de um ObservableList
ObservableList fruits = FXCollections.observableArrayList (
"Maçã", "Banana", "Pêra", "Morango", "Pêssego", "Laranja", "Ameixa");
ComboBox fruit = nova ComboBox (frutas);
Métodos úteis
Se você criar um objeto ComboBox vazio, poderá usar o método setItems. Passar uma ObservableList de objetos definirá os itens na caixa de combinação.
ObservableList fruits = FXCollections.observableArrayList (
"Maçã", "Banana", "Pêra", "Morango", "Pêssego", "Laranja", "Ameixa");
fruit.setItems (frutas);
Se você desejar adicionar itens à lista ComboBox posteriormente, poderá usar o método addAll do método getItems. Isso anexará os itens ao final da lista de opções:
fruit.getItems (). addAll ("Melão", "Cereja", "Amora");
Para adicionar uma opção a um local específico na lista de opções ComboBox, use o método add do método getItems. Este método utiliza um valor de índice e o valor que você deseja adicionar:
fruit.getItems (). add (1, "Limão");
Nota: Os valores de índice do ComboBox começam em 0. Por exemplo, o valor acima de "Lemon" acima será inserido na lista de opções ComboBox na posição 2, pois o índice passado é 1.
Para pré-selecionar uma opção na lista de opções da ComboBox, use o método setValue:
fruit.setValue ("Cherry");
Se o valor passado para o método setValue não estiver na lista, o valor ainda será selecionado. No entanto, isso não significa que esse valor foi adicionado à lista. Se o usuário escolher outro valor posteriormente, o valor inicial não estará mais na lista a ser selecionada.
Para obter o valor do item atualmente selecionado na ComboBox, use o método getItems:
String selecionada = fruit.getValue (). ToString ();
Dicas de uso
O número de opções normalmente apresentadas pela lista suspensa ComboBox é dez (a menos que haja menos de dez itens; nesse caso, o padrão é o número de itens). Este número pode ser alterado usando o método setVisibleRowCount:
fruit.setVisibleRowCount (25);
Novamente, se o número de itens na lista for menor que o valor definido no método setVisibleRowCount, a ComboBox usará como padrão a exibição do número de itens na lista suspensa ComboBox.
Manipulação de Eventos
Para rastrear a seleção de itens em um objeto ComboBox, você pode usar o método addListener do Método selectedItemProperty do SelectionModel para criar um ChangeListener Ele selecionará os eventos de alteração para a ComboBox:
final Label selectionLabel = new Label ();
fruit.getSelectionModel (). selectedItemProperty (). addListener (
novo ChangeListener () {
vazio público alterado (ObservableValue ov,
String old_val, String new_val) {
selectionLabel.setText (new_val);
}
});