domingo, 21 de febrero de 2016

008.- Uso de Botones de Activación (ToggleButtons) - Java y NetBeans

A continuación presento un ejemplo de cómo usar los Botones de Activación (ToggleButtons):
        

Realiza los siguientes pasos:


1.   Crea un nuevo proyecto.
2.   Dentro de Source Package crea un Java Package y llamalo paqueteInicial.
3.   Dentro de paqueteInicial crea un JFrame Form y nombralo VentanaInicial.

4.   Dentro de VentanaInicial añade lo siguiente:
·       Una etiqueta con el texto "Precio Base". No es necesario cambiarle su nombre.
·       Un cuadro de texto, cambiale su nombre a txtPrecioBase.
·       Un botón con el texto "Calcular" y ponle de nombre btnCalcular.
·       Una etiqueta vacía con borde y llamale etiTotal. Haciendo uso de su propiedad font haga que el texto tenga un mayor tamaño.
·       Tres Botones de Activación (JToggleButton) con los textos: "Sistema Operativo", "Office" y "Antivirus" respectivamente.

·       Los botones del tipo JToggleButton se diferencian de los botones normales en que se quedan pulsados cuando se hace clic sobre ellos, y no vuelven a su estado normal hasta que se vuelva a hacer clic en ellos.
·       Cambia los nombres a los botones a btnSistemaOperativo, btnOffice y btnAntivirus respectivamente.
·       Finalmente añade tres etiquetas conteniendo los números 200, 150, 100. Nombra a la primera etiqueta etiSistemaOperativo, a la segunda etiOffice y a la tercera etiAntivirus.
·       La ventana debe tener el siguiente diseño:



5.   Ejecuta el proyecto y comprueba la funcionalidad de los botones JToggleButton:



6.   El proyecto debe tener la siguiente funcionalidad:
6.1. El usuario introducirá el precio base para el servicio de formateo de computadoras.
6.2. Si el cliente desea sólo la instalación del Sistema Operativo, se activará dicho botón.
6.3. Si el cliente quiere la instalación del paquete Office, se activará ese botón.
6.4. Si el cliente además solicita la instalación de Antivirus, se activará el botón Antivirus.
6.5. Ten en cuenta que el cliente puede querer una o varias de las opciones indicadas.
6.6. Al final al hacer clic en el botón Calcular obtendrá el precio total. Este precio se calcula de la siguiente forma:

Precio Total = Precio Base + Precios Extras

6.7. Los Precios Extras depende de las opciones elegidas por el usuario. Por ejemplo, si el usuario quiere Instalación del Sistema Operativo y de Antivirus, los Precios Extras será de 300 (200 + 100).

7.   El código a programar en el evento actionPerformed del botón btnCalcular será el siguiente:
        double precioBase, precioSistemaOperativo, precioOffice, precioAntivirus, precioTotal;

        precioBase = Double.parseDouble(txtPrecioBase.getText());
        precioSistemaOperativo = Double.parseDouble(etiSistemaOperativo.getText());
        precioOffice = Double.parseDouble(etiOffice.getText());
        precioAntivirus = Double.parseDouble(etiAntivirus.getText());

        precioTotal = precioBase;

        if (btnSistemaOperativo.isSelected()) {
            precioTotal = precioTotal + precioSistemaOperativo;
        }

        if (btnOffice.isSelected()) {
            precioTotal = precioTotal + precioOffice;
        }

        if (btnAntivirus.isSelected()) {
            precioTotal = precioTotal + precioAntivirus;
        }

        etiTotal.setText(precioTotal + "");


8.   Expliquemos el código anterior:
8.1.      Primero se crean variables tipo doublé (para poder trabajar con decimales).
8.2.      Almacenamos los datos de la ventana en las variables respectivas según lo indicado por el usuario, convirtiendo los datos en tipo double ya que éstas están en la ventana como tipo cadena.

        precioBase = Double.parseDouble(txtPrecioBase.getText());
        precioSistemaOperativo = Double.parseDouble(etiSistemaOperativo.getText());
        precioOffice = Double.parseDouble(etiOffice.getText());
        precioAntivirus = Double.parseDouble(etiAntivirus.getText());

8.3.      Una vez almacenados los datos en forma numérica en las variables, ya se pueden hacer cálculos con ellos. El programa utiliza la variable precioTotal donde se irá almacenando el resultado. En primer lugar se almacena en esta variable el Precio Base:

                                                                precioTotal = precioBase;

8.4.      A continuación se le suma a la variable precioTotal los precios de los extras, preguntando para ello si el botón correspondiente está seleccionado. Esto se hace utilizando la instrucción if. Así por ejemplo, para sumar el precio extra por instalación de Sistema Operativo se usa el código siguiente:

        if (btnSistemaOperativo.isSelected()) {
            precioTotal = precioTotal + precioSistemaOperativo;
        }

8.5.      En el código anterior mediante el método isSelected() del botón btnSistemaOperativo se sabe si dicho botón está o no seleccionado para proceder a sumar o no el precio extra (de instalación de Sistema Operativo).

8.6.      En la última línea de código se muestra el Precio Total en la etiqueta.

9.   Ejecuta el proyecto para observar su funcionamiento:




10. Si en la mayoría de los casos digamos en un 95% el cliente solicita la instalación de Office, entonces podemos hacer que dicho botón ya esté activado cuando arranca el proyecto. Para que esto ocurra debemos programar en el método Constructor después de initComponents(); la siguiente línea:

                                                                 btnOffice.setSelected(true);

11. En la línea anterior se usa el método setSelected para activar al botón tbtOffice usando la instrucción true.
12. Cuando se ejecuta el proyecto se mostrará la siguiente ventana:




CONCLUSIÓN:

Los JToggleButton son botones que pueden quedarse pulsados.

A través del método isSelected podemos saber si un JToggleButton está pulsado o no.

Haciendo uso del método setSelected se puede seleccionar o no un JToggleButton.

En proyectos reales estos botones no son muy usados, en su lugar se emplean los Cuadros de Verificación (JCheckBox).

No hay comentarios.:

Publicar un comentario