Un JToggleButton es un botón de dos estados. Los dos estados están seleccionados y no seleccionados. Las clases JRadioButton y JCheckBox son subclases de esta clase. Cuando el usuario presiona el botón de alternar, alterna entre estar presionado o no presionado. JToggleButton se utiliza para seleccionar una opción de una lista de opciones posibles. Los botones pueden configurarse y, hasta cierto punto, controlarse mediante acciones. Usar una Acción con un botón tiene muchos beneficios más allá de configurar directamente un botón.
Constructores en JToggleButton:
- JToggleButton(): crea un botón de alternar inicialmente no seleccionado sin configurar el texto o la imagen.
- JToggleButton(Acción a): Crea un botón de alternar donde las propiedades se toman de la Acción suministrada.
- JToggleButton (icono de icono): crea un botón de alternar inicialmente no seleccionado con la imagen especificada pero sin texto.
- JToggleButton(icono icono, booleano seleccionado): crea un botón de alternancia con la imagen y el estado de selección especificados, pero sin texto.
- JToggleButton (texto de string): crea un botón de alternar no seleccionado con el texto especificado.
- JToggleButton (texto de string, booleano seleccionado): crea un botón de alternancia con el texto y el estado de selección especificados.
- JToggleButton(String text, Icon icon): crea un botón de alternar que tiene el texto y la imagen especificados, y que inicialmente no está seleccionado.
- JToggleButton (texto de string, icono de icono, booleano seleccionado): crea un botón de alternar con el texto, la imagen y el estado de selección especificados.
Métodos comúnmente utilizados:
Método | Descripción |
---|---|
getAccessibleContext() | Obtiene el AccessibleContext asociado con este JToggleButton. |
getUIClassID() | Devuelve una string que especifica el nombre de la clase l&f que representa este componente. |
paramString() | Devuelve una representación de string de este JToggleButton. |
actualizar UI() | Restablece la propiedad de la interfaz de usuario a un valor del aspecto actual. |
Los siguientes programas ilustran la clase JToggleButton:
1. Programa Java para implementar JToggleButton Events con ItemListener: En este programa, estamos creando el marco usando JFrame() . Aquí, setDefaultCloseOperation() se usa para establecer la opción de cierre para el marco. Usando JToggleButton() se crea un botón. Cree una instancia del ItemListener que contiene solo el método itemStateChanged() que se invoca automáticamente cuando se hace clic en el botón. El evento se genera en el botón y, en consecuencia, la salida se imprime en la consola. Adjunte todos los oyentes y agregue ItemListener al botón. Agregar botón al marco y configurar el tamaño del marco.
Java
import java.awt.BorderLayout; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import javax.swing.JFrame; import javax.swing.JToggleButton; public class JToggleButtonExamp { // Main Method public static void main(String args[]) { // create a frame and set title JFrame frame = new JFrame("Selecting Toggle"); // set the default close operation of the frame frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // create a ToggleButton JToggleButton toggleButton = new JToggleButton("Toggle Button"); // ItemListener is notified whenever you click on the Button ItemListener itemListener = new ItemListener() { // itemStateChanged() method is nvoked automatically // whenever you click or unlick on the Button. public void itemStateChanged(ItemEvent itemEvent) { // event is generated in button int state = itemEvent.getStateChange(); // if selected print selected in console if (state == ItemEvent.SELECTED) { System.out.println("Selected"); } else { // else print deselected in console System.out.println("Deselected"); } } }; // Attach Listeners toggleButton.addItemListener(itemListener); frame.add(toggleButton, BorderLayout.NORTH); frame.setSize(300, 125); frame.setVisible(true); } }
Producción:
2. Programa Java para implementar JToggleButton Event usando ActionListener: Aquí, se crea un JToggleButton en el JFrame. Luego, definimos el ActionListener. actionPerformed() es el único método en ActionListener() que se invoca cada vez que se hace clic en un componente registrado. abstractButton.getModel().isSelected() devuelve verdadero si el botón está seleccionado; de lo contrario, devuelve falso. Adjunte el Oyente al ToggleButton.
Java
import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.AbstractButton; import javax.swing.JFrame; import javax.swing.JToggleButton; public class JToggleButtonExamp { // Main Method public static void main(String args[]) { // create the JFrame JFrame frame = new JFrame("Selecting Toggle"); // set default close operation for frame frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // create a ToggleButton JToggleButton toggleButton = new JToggleButton("Toggle Button"); // Define ActionListener ActionListener actionListener = new ActionListener() { // actionPerformed() method is invoked // automatically whenever you click on // registered component public void actionPerformed(ActionEvent actionEvent) { AbstractButton abstractButton = (AbstractButton)actionEvent.getSource(); // return true or false according // to the selection or deselection // of the button boolean selected = abstractButton.getModel().isSelected(); System.out.println("Action - selected=" + selected + "\n"); } }; // Attach Listeners toggleButton.addActionListener(actionListener); // add ToggleButton to the frame frame.add(toggleButton, BorderLayout.NORTH); // set size of the frame frame.setSize(300, 125); frame.setVisible(true); } }
Producción :
Nota: Es posible que los programas anteriores no se ejecuten en un IDE en línea. Utilice un compilador fuera de línea.
Referencia: https://docs.oracle.com/javase/7/docs/api/javax/swing/JToggleButton.html