Controles do JavaFX: Controles datePicker e ColorPicker
Ao todo, JavaFX tem cerca de 75 controles diferentes que você pode escolher para construir suas interfaces de usuário. Aqui estão mais dois JavaFX controla a colocar em sua caixa de ferramentas.
ColorPicker
UMA seletor de cores é um tipo especial de caixa de combinação que permite que o usuário escolha uma cor. Quando o seletor de cores é exibido inicialmente, parece um botão. Quando o usuário clica nele, uma paleta de cores aparece a partir do qual o usuário pode escolher, como mostrado nesta figura.
Se o usuário não gostar das escolhas que são exibidos na paleta de cores, o usuário pode clicar no Cores personalizadas link na parte inferior do seletor. Isso traz uma caixa de diálogo que permite ao usuário criar uma cor personalizada, como mostrado nesta figura.
Para criar um seletor de cores, basta usar o construtor padrão:
ColorPicker cp = new ColorPicker () -
Você pode ler a cor selecionada pelo usuário através do getValue método:
Cor c = cp.getValue () -
O exemplo a seguir mostra como você pode adicionar um ouvinte para um seletor de cores do OnAction evento para definir a cor de preenchimento de um rectângulo com o nome rect à cor selecionada:
cp.setOnAction (e -> r1.setFill (cp.getValue ())) -
DatePicker
Como um seletor de cores, um selecionador de data é um tipo especial de caixa de combinação que permite ao usuário selecionar uma data a partir de uma exibição do calendário-like. Inicialmente, o selecionador de data parece com um campo de texto. Mas quando o usuário clica nele, uma exibição de calendário aparece, como mostrado nesta figura. O usuário pode então escolher uma data, que o programa pode recuperar através do getValue , que retorna a data como um LocalDate.
O exemplo a seguir cria um controle selecionador de data e um OnAction manipulador de eventos que define o valor de texto de um Rótulo controle chamado LBL para a data selecionada pelo usuário:
DatePicker dp = new DatePicker () - dp.setOnAction (e -> {data LocalDate = dp.getValue () - lbl.setText (Date.toString ()) -}) -