Buscar..


Creando botones de radio

Los botones de radio le permiten al usuario elegir un elemento de los dados. Hay dos formas de declarar un RadioButton con un texto aparte. Usando el constructor predeterminado RadioButton() y configurando el texto con el método setText(String) o usando el otro constructor RadioButton(String) .

RadioButton radioButton1 = new RadioButton();
radioButton1.setText("Select me!");
RadioButton radioButton2= new RadioButton("Or me!");

Como RadioButton es una extensión de Labeled también puede haber una Image especificada para RadioButton . Después de crear el RadioButton con uno de los constructores, simplemente agregue la Image con el setGraphic(ImageView) como aquí:

Image image = new Image("ok.jpg");
RadioButton radioButton = new RadioButton("Agree");
radioButton.setGraphic(new ImageView(image));

Usar grupos en los botones de radio

A ToggleGroup se utiliza para gestionar la RadioButton s de modo que sólo uno de cada grupo se pueden seleccionar en cada momento.

Crea un ToggleGroup simple como el siguiente:

ToggleGroup group = new ToggleGroup();

Después de crear un Togglegroup se puede asignar a RadioButton s usando setToggleGroup(ToggleGroup) . Use setSelected(Boolean) para preseleccionar uno de los RadioButton .

RadioButton radioButton1 = new RadioButton("stackoverlow is awesome! :)");
radioButton1.setToggleGroup(group);
radioButton1.setSelected(true);

RadioButton radioButton2 = new RadioButton("stackoverflow is ok :|");
radioButton2.setToggleGroup(group);

RadioButton radioButton3 = new RadioButton("stackoverflow is useless :(");
radioButton3.setToggleGroup(group);

Eventos para botones de radio

Normalmente, cuando se selecciona uno de los RadioButton s en un ToggleGroup la aplicación realiza una acción. A continuación se muestra un ejemplo que imprime los datos de usuario del RadioButton seleccionado que se ha configurado con setUserData(Object) .

radioButton1.setUserData("awesome")
radioButton2.setUserData("ok");
radioButton3.setUserData("useless");

ToggleGroup group = new ToggleGroup();
group.selectedToggleProperty().addListener((obserableValue, old_toggle, new_toggle) -> {
    if (group.getSelectedToggle() != null) {
        System.out.println("You think that stackoverflow is " + group.getSelectedToggle().getUserData().toString());
    }
});         

Solicitando enfoque para botones de radio

Digamos que el segundo RadioButton cada tres está preseleccionado con setSelected(Boolean) , el enfoque sigue siendo el primer RadioButton por defecto. Para cambiar esto use el método requestFocus() .

radioButton2.setSelected(true);
radioButton2.requestFocus();


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow