You are on page 1of 16

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

USO DE LOS OBJETOS JRADIOBUTTON Y


JCHECKBOX

Objeto deControl JRadioButton


Primero se usa swing en funcin de que awt no trae como default un componente
radiobutton, asi que los ejemplos y pruebas se tendran que hacer con JFrame.
Este Componente se utiliza para presentar al usuario un conjunto de opciones
mutuamente excluyentes entre si, es decir si el usuario selecciona un componente
RadioButton todos los dems componentes RadioButton en la forma, se desmarcan
solos, o se deseleccionan solos, como mejor se entienda.
Recordar tambin que cuando el usuario selecciona un RadioButton, todos los dems
RadioButton en el objeto(forma o ventana) son deseleccionados automticamente, esto
es por que dos RadioButton son mutuamente excluyentes entre si
Un objeto de control JRadioButton permite dibujar en el formulario una opcin que
puede ser seleccionada, es decir, es un objeto que define una opcin o alternativa
para

ser elegida. Este objeto debe mostrarse ms de una vez en el diseo del

formulario para que exista la alternativa de seleccionar una opcin de un grupo de


opciones. Los objetos son mutuamente excluyentes con respeto a la seleccin. Se tiene
la siguiente figura:

Docente: Ing. Mirko Manrique Ronceros

Pgina 1 de 16

Mirko.manrique@hotmail.com

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

En la figura anterior se observan tres objetos JRadioButton y para poder seleccionar


sola una alternativa se tendr que usar el objeto ButtonGroup que es un elemento
que no se llega

dibujar

en

el

formulario

pero

permite

agrupar

objetos

JRadioButton y una vez agrupados permite la seleccin de una opcin cuando la


aplicacin se encuentre en ejecucin. En las dos aplicaciones que veremos ms
adelante se har hincapi en este asunto.

Propiedades ms usadas:
Text: Permite establecer la expresin de la opcin.
Font: Permite establecer el tipo de letra en el objeto de control.
Enabled: Para habilitar o inhabilitar el uso del objeto de
control.

Mtodo ms usado:
isSelected(): retorna el valor de verdadero si el objeto se encuentra seleccionado y
falso en caso contrario.

Objeto de Control JCheckBox


Se analiza en este JAVA TEMA Checkbox de awt en funcin de que para applets no se
debe usar controles derivados de swing.
Un objeto de control JCheckBox permite dibujar en el formulario una opcin que puede
ser seleccionada, es decir, es un objeto que define una opcin o alternativa para
ser elegida. La diferencia con respecto al objeto de control JRadioButton es que si se
tienen dos o ms objetos JCheckBox se puede seleccionar ms de una opcin o
simplemente no seleccionar ninguna, por lo que no son mutuamente excluyentes.
Se tiene la siguiente figura:

En la figura anterior se observa un objeto JCheckBox que expresa como opcin Contado,
si es seleccionado significa que la forma de pago es al contado y si se deja como
no seleccionado significa que la forma de pago no es al contado por lo que se puede
asumir que es al crdito.

Docente: Ing. Mirko Manrique Ronceros

Pgina 2 de 16

Mirko.manrique@hotmail.com

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

Propiedades ms usadas:
Text: Permite establecer la expresin de la opcin.
Font: Permite establecer el tipo de letra en el objeto de control.
Enabled: Para habilitar o inhabilitar el uso del objeto de
control.

Mtodo ms usado:
isSelected(): retorna el valor de verdadero si el objeto se encuentra seleccionado y
falso en caso contrario.
Aplicacin 1
Vamos a construir una aplicacin en entorno visual que permita ingresar del costo de un
artefacto, del tipo de artefacto y la forma de pago, para calcular lo siguiente:
a. Si el pago es al contado hay un descuento del 6% del costo del artefacto si el tipo
de artefacto es Audio, 8% si es Video y 5% si es Lnea Blanca.
b. Si el pago es al crdito hay un incremento del 7% sobre el costo del artefacto si es
el tipo de artefacto es Audio, 9% si es Video y 10% si es Lnea Blanca.
c. El monto del IGV es del 19% sobre el costo del artefacto luego de aplicar el
descuento o el incremento.
d. El monto a pagar que es el costo del artefacto (descontado o incrementado) ms el
monto del IGV.

Solucin:
Procedamos a crear un proyecto denominado Aplicaciones dentro de una
carpeta llamada Practicas y como clase Aplicacin1 que pertenece al
paquete de ejemplos. Luego damos click en el botn de comando Finish.

Docente: Ing. Mirko Manrique Ronceros

Pgina 3 de 16

Mirko.manrique@hotmail.com

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

Seleccionamos la carpeta de ejemplos, damos click con el botn derecho del


mouse y elegimos la opcin New y posteriormente JframeForm.

A continuacin, se visualiza la siguiente ventana y cambiamos el nombre de la


clase indicado por la flecha:

Docente: Ing. Mirko Manrique Ronceros

Pgina 4 de 16

Mirko.manrique@hotmail.com

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

Ahora procedemos a disear el formulario, donde se har nfasis en el manejo de


los nuevos objetos de control. No olvidemos que cada vez que usemos un
formulario su Layout debe ser cambiado a Absolute Layout como se aprecia en la
siguiente figura:

Docente: Ing. Mirko Manrique Ronceros

Pgina 5 de 16

Mirko.manrique@hotmail.com

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

Dibujamos como etiqueta (usando un JLabel) la expresin: Costo del Artefacto y


el cuadro de texto (Usando un JtextField). Tambin a travs de una
etiqueta colocamos la expresin Tipo de Artefacto y luego 3 objetos
JRadioButton. Los objetos JRadioButton deben expresar Audio, Video y
Lnea Blanca. Debemos recordar que se tendr que hacer uso de la
propiedad Text para cambiar las expresiones.

De la paleta SwingControls seleccionamos ButtonGroup y lo arrastramos hacia


el formulario. Esto ocasionar que se cree un objeto ButtonGroup1 tal como
se aprecia en el navegador (lado izquierdo del diseo del formulario).

Docente: Ing. Mirko Manrique Ronceros

Pgina 6 de 16

Mirko.manrique@hotmail.com

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

Seleccionamos el objeto JRadioButton referido a Audio y luego buscamos en


la ventana de propiedades, la propiedad buttongroup y luego eligimos
buttongroup1

Lo mismo hacemos para los tipos de artefactos Video y Lnea Blanca. Por lo tanto,
los tres objetos JRadioButton deben pertenecer a buttongroup1. Si pretendemos
en estos momentos ejecutar el formulario podremos seleccionar uno de los tres
tipos de artefactos.

Docente: Ing. Mirko Manrique Ronceros

Pgina 7 de 16

Mirko.manrique@hotmail.com

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

A continuacin, agregamos un objeto JCheckBox para indicar la forma de


pago que solo puede ser de dos posibilidades: Contado o Crdito. Seleccionado
significa al Contado, no seleccionado significa al crdito. Agregamos los
dems objetos de control que se visualiza en el diseo del formulario y que
fueron estudiados en la sesin anterior. En el diseo del formulario se indica los
nombres de los objetos y debemos recordar que para asignar un nombre a un
objeto de control hay que seleccionar al objeto y dando click con el botn
derecho del mouse se procede a seleccionar la opcin Change Variable Name

Procedamos a programar en los botones de comando:


En el botn de comando CALCULAR (btnCalcular), al darle doble click, escribimos
el siguiente cdigo: (lo escrito en azul)
private void btnCalcularActionPerformed(java.awt.event.ActionEvent evt)
{
double costo, dcto=0, incre=0, igv, mpagar;

Docente: Ing. Mirko Manrique Ronceros

Pgina 8 de 16

Mirko.manrique@hotmail.com

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

costo=Double.parseDouble(txtCosto.getText());
if (chkContado.isSelected())
{
if (rbAudio.isSelected())
dcto=costo*0.06;
if (rbVideo.isSelected())
dcto=costo*0.08;
if (rbLinea.isSelected())
dcto=costo*0.05;
}
else
{
if (rbAudio.isSelected())
incre=costo*0.07;
if (rbVideo.isSelected())
incre=costo*0.09;
if (rbLinea.isSelected())
incre=costo*0.1;
}
igv=(costo-dcto+incre)*0.19;
mpagar=(costo-dcto+incre)+igv;
txtDcto.setText(String.valueOf(dcto));
txtIncre.setText(String.valueOf(incre));
txtIgv.setText(String.valueOf(igv));
txtMPagar.setText(String.valueOf(mpagar));

Una vez declaradas las variables de memoria, en la variable costo se asigna el valor
introducido en el cuadro de texto txtCosto gracias al mtodo getText() que logra
obtener el dato colocado en el objeto de control. Con la sentencia if se evala si est
seleccionada la opcin al contado y, si es as, se procede a evaluar cul de los tipos de
artefactos est seleccionado para aplicar el clculo del descuento que ser asignando a
la variable de memoria dcto. En caso que no est seleccionada la opcin al Contado
entonces se asume que la forma de pago es al crdito y se procede a evaluar cul de
los tipos de artefactos est seleccionado para aplicar el clculo del incremento que
ser asignado a la variable incre. A continuacin, se calcula el IGV y el monto a
pagar. Luego, los objetos de control txtDcto, txtIncre, txtIgv y txtMPagar reciben
valores a travs de las variables de memoria dcto, incre, igv y mpagar en sus
cuadros de textos gracias al mtodo setText(), por supuesto

previamente se tiene

que convertir a cadena de texto los valores numricos de las variables usando el
mtodo valueOf() de la clase String.
En el botn de comando BORRAR (btnBorrar), luego de darle doble click,
escribimos el siguiente cdigo: (lo escrito en azul)
Docente: Ing. Mirko Manrique Ronceros

Pgina 9 de 16

Mirko.manrique@hotmail.com

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

private void btnBorrarActionPerformed(java.awt.event.ActionEvent evt)


{

txtCosto.setText();
txtDcto.setText();
txtIncre.setText();
txtIgv.setText();
txtMPagar.setText();
rbAudio.setSelected(false);
rbVideo.setSelected(false);
rbLinea.setSelected(false);
chkContado.setSelected(false);
txtCosto.requestFocus();

Se limpian los cuadros de textos con slo poner en el mtodo setText() y a los
objetos botn de radio (JRadioButton) y el objeto de caja verificacin (JCheckBox)
se les aplica el mtodo setSelected() para lograr quitar la seleccin de
estos objetos. Lo ms importante es que los cuadros de textos estn limpios
para poder permitir el ingreso de nuevos datos.

En el botn de comando CERRAR (btnCerrar), luego de darle doble click,


escribimos el siguiente cdigo: (lo escrito en azul)
private void btnCerrarActionPerformed(java.awt.event.ActionEvent evt)
{
dispose();
}

El mtodo dispose() permite descargar el formulario y terminar la ejecucin de la


aplicacin.

Luego procedemos a ejecutar la aplicacin seleccionando frmAplicacion1 en


la pgina o pestaa Proyects (se encuentra al lado izquierdo del diseo
del formulario) y al dar click botn derecho elegimos Run File.

Docente: Ing. Mirko Manrique Ronceros

Pgina 10 de 16

Mirko.manrique@hotmail.com

10

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

Aplicacin 2
Vamos a construir una aplicacin en entorno visual que permita calcular la bonificacin,
el descuento y el sueldo neto de un trabajador dado el ingreso del sueldo bsico, el
grado de instruccin, la condicin laboral e indicando si tiene vivienda e hijos bajo las
siguientes consideraciones:
a. Por el grado de instruccin percibe una bonificacin de 5% del sueldo bsico si el
grado es Secundaria, 12% del sueldo bsico si es Universitaria y 18% del sueldo
bsico si es maestra.
b. Por la condicin laboral percibe una bonificacin del 4% del sueldo bsico si es
contratado, 10% del sueldo bsico si es nombrado y del 5% del sueldo bsico si es
de servicios no personales.
c. Si tiene vivienda no percibe ninguna bonificacin pero si no tiene vivienda percibe
una bonificacin del 3% del sueldo bsico
d. Si tiene hijos percibe una bonificacin del 6% del sueldo bsico.
e. Se le aplica 11% del sueldo bruto (sueldo bsico + bonificaciones) por el pago de la
AFP y esto constituye un descuento en sus haberes.
f. El sueldo neto es igual al sueldobruto menos el descuento.
Solucin:
Seleccionamos la carpeta de ejemplos, damos click con el botn derecho
del mouse y elegimos la opcin New y posteriormente JframeForm.

A continuacin, se visualiza la ventana de New Jframe Form donde


colocaremos como class name (nombre de la clase) frmAplicacion2 y luego
daremos click en el botn de comando Finish.
Docente: Ing. Mirko Manrique Ronceros

Pgina 11 de 16

Mirko.manrique@hotmail.com

11

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

Ahora procedemos a disear el formulario, donde se har nfasis en el manejo


de los nuevos objetos de control. No olvidemos que cada vez que usemos
un formulario su Layout debe ser cambiado a Absolute Layout como se aprecia
en la siguiente figura:

Dibujamos como etiqueta (usando un JLabel) la expresin: SUELDO BASICO: y


el cuadro de texto (Usando un JTextField). Tambin a travs de una etiqueta
(Jlabel) colocamos la expresin Grado de Instruccin: y con 3 objetos
JRadioButton debemos expresar Secundaria, Universitaria y Maestra
haciendo uso de la propiedad Text de los objetos JRadioButton para cambiar las
expresiones. Adems c on otra etiqueta (Llabel) colocamos la expresin Condicin
Laboral:y

con

objetos

JRadioButton

debemos

expresar

Contratado,

Nombrado y Serv. No Pers.. Dado que tenemos que seleccionar una opcin
para Grado de Instruccin y otra opcin para la Condicin Laboral ser necesario
crear 2 objetos JButtonGroup. Recordemos que se arrastra desde la paleta en
dos instantes el objeto JButtonGroup.

Docente: Ing. Mirko Manrique Ronceros

Pgina 12 de 16

Mirko.manrique@hotmail.com

12

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

Usaremos para las opciones de Grado de Instruccin el objeto buttonGroup1 y


para las opciones de Condicin Laboral buttonGroup2. Esto permitir poder
seleccionar una opcin de las tres alternativas. Para es necesario seleccionar cada
objeto JRadioButton y usar en la ventana de propiedades,la propiedad
buttonGroup.

Docente: Ing. Mirko Manrique Ronceros

Pgina 13 de 16

Mirko.manrique@hotmail.com

13

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

Continuamos con el diseo del formulario agregando los dems objetos de


control que se visualizan en el diseo del formulario y que fueron estudiados en la
sesin anterior. En el diseo del formulario se indican los nombres de los
objetos y debemos recordar que para asignar un nombre a un objeto de control
hay que seleccionar al objeto y dando click al botn derecho del mouse se
procede a seleccionar la opcin Change Variable Name.

Procedamos a programar en los botones de comando:


En el botn de comando CALCULAR (btnCalcular), luego de darle doble click,
escribimos el siguiente cdigo: (lo escrito en azul)
private void btnCalcularActionPerformed(java.awt.event.ActionEvent evt)
{

double boni=0.0, sb, dcto, sn, sbruto;


sb=Double.parseDouble(txtSB.getText());
if (rbSec.isSelected())
boni=sb*0.05;
if (rbUni.isSelected())
boni=sb*0.12;
if (rbMae.isSelected())
boni=sb*0.18;
if (rbCon.isSelected())
boni=boni+sb*0.04;
if (rbNom.isSelected())
boni=boni+sb*0.1;
if (rbSNP.isSelected())
boni=boni+sb*0.05;
if (!(chkCas.isSelected()))

Docente: Ing. Mirko Manrique Ronceros

Pgina 14 de 16

Mirko.manrique@hotmail.com

14

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

boni=boni+sb*0.03;

if (chkHij.isSelected())
boni=boni+sb*0.06;
sbruto=sb+boni;
dcto=sbruto*0.11;
sn=sbruto-dcto;
txtBoni.setText(String.valueOf(boni));
txtDcto.setText(String.valueOf(dcto));
txtSN.setText(String.valueOf(sn));

Una vez declaradas las variables de memoria, en la variable sb se asigna el valor


introducido en el cuadro de texto txtSB gracias al mtodo getText() que logra
obtener el dato colocado en el objeto de control. Con la sentencia if se evala si est
seleccionada la opcin Secundaria y si es

as

se procede a calcular la

bonificacin. De igual manera se hace para Universitaria y para Maestra. Hasta aqu
se calcula la primera bonificacin por el concepto de Grado de Instruccin. Ahora
viene una segunda bonificacin por el concepto de Condicin Laboral para lo cual la
variable de memoria boni se comporta como variable acumulativa, as por ejemplo, si
el trabajador es de condicin Contratado para calcular la bonificacin debo usar la
instruccin boni=boni+sb*0.04; donde la variable boni contiene el clculo por Grado
de instruccin y se quiere sumar ahora por el concepto de Condicin Laboral. Lo
mismo se har con las otras opciones y se seguir acumulando inclusive con las
opciones definidas con el objeto JCheckBox (Casado e Hijos) A continuacin se calcula
el sueldo bruto, el descuento y el sueldo neto. Luego los objetos de control txtBoni,
txtDcto y txtSN reciben valores a travs de las variables de memoria boni, dcto y
sn en sus cuadros de textos gracias al mtodo setText(), por supuesto previamente
se tiene que convertir a cadena de texto los valores numricos de las variables
usando el mtodo valueOf() de la clase String.
En el botn de comando BORRAR (btnBorrar), luego de darle doble click,
escribimos el siguiente cdigo: (lo escrito en azul)
private void btnBorrarActionPerformed(java.awt.event.ActionEvent evt)
{
txtSN.setText();
txtBoni.setText();
txtDcto.setText();
txtSN.setText();
txtCosto.requestFocus();
}
Docente: Ing. Mirko Manrique Ronceros

Pgina 15 de 16

Mirko.manrique@hotmail.com

15

UNIVERSIDAD NACIONAL DEL SANTA

E.A.P. SISTEMAS E INFORMATICA

FACULTA DE INGENIERIA

CURSO: MICROCOMPUTACION III

Se limpian los cuadros de textos con solo poner en el mtodo setText(). Lo ms


importante es que los cuadros de textos estn limpios para poder permitir el ingreso
de nuevos datos.

En el botn de comando CERRAR (btnCerrar), luego de darle doble click,


escribimos el siguiente cdigo: (lo escrito en azul)
private void btnCerrarActionPerformed(java.awt.event.ActionEvent evt)
{
dispose();
}

El mtodo dispose() permite descargar el formulario y terminar la ejecucin de la


aplicacin.

Luego procedemos a ejecutar la aplicacin seleccionando frmAplicacion1 en


la pgina o pestaa Proyects (se encuentra al lado izquierdo del diseo
del formulario) y al dar clic botn derecho elegimos Run File.

En el siguiente tema conoceremos a otro objeto de control y seguiremos trabajando con lo


aprendido con las sesiones 2 y 3.

Docente: Ing. Mirko Manrique Ronceros

Pgina 16 de 16

Mirko.manrique@hotmail.com

16

You might also like