Vous êtes sur la page 1sur 10

Ejercicio Guiado 4:

1.- Creamos un nuevo JFrame, al que llamaremos Meses

2.- En la ventana Design vamos a añadir un JList al que llamaremos lstMeses en la opción
ChangeVaribaleName del JList y además borrar los datos escritos en la opción model.

- Para identificar al JList agregaremos un Label cuyo nombre será txtMeses.

3.- Los siguientes componentes son 4 botones de opción (JRadioButton) cuyos nombres son: Un
botón “Trimestre 1” llamado optTri1. o Un botón “Trimestre 2” llamado optTri2. o Un botón
“Trimestre 3” llamado optTri3. o Un botón “Trimestre 4” llamado optTri4.
-Los botones de opción los vamos a agrupar a través de un ButtonGroup llamado grupo
Trimestres (este objeto será solamente visible en la ventana del navegador), por ahora la interfaz
se observa así:

4.- Para poder agregarlo dentro del ButtonGroup vamos a las propiedades de uno de los optTri…,
y en la opción buttonGroup seleccionamos grupoTrimestres, esto hacemos para todos los
JRadioButton que tenemos en el navegador. Es necesario que además este Grupo lo insertemos
dentro de un JPanel, en cuyas propiedades seleccionaremos border, aquí asignamos que tenga
un borde Title Border, nombre “Trimestres” y un color de Título Color Azul.
5.- A partir de aquí ordenamos los JRadioButton para que estén situados dentro de nuestro Panel
hasta que el resultado sea este.

6.- Agregaremos: Un botón “Rellenar” llamado btnRellenar. - Un botón “Vaciar” llamado


btnVaciar.
7.- Agregamos una etiqueta con borde llamada etiMes. De igual manera en la opción border de
nuestro Label seleccionamos:

8.- Dentro del btnRellenar vamos a programar un código que nos permita hacer lo siguiente:

El usuario pulsará el botón Rellenar, y entonces el cuadro de lista se rellenará con los meses
correspondientes al trimestre elegido. - Por ejemplo, si el usuario elige el Trimestre 2 y pulsa el
botón, entonces el cuadro de lista contendrá: Abril, mayo, junio.

Para ello primero nos vamos a los eventos del botón Rellenar y programamos lo siguiente:

DefaultListModel modelo = new DefaultListModel();

public void señalar() {

if (optTri1.isSelected()) {

String a = "Enero,Febrero,Marzo";

modelo.addElement(a);

lstMeses.setModel(modelo);

} else if (optTri2.isSelected()) {

String b = "Abril,Mayo,Junio";

modelo.addElement(b);

lstMeses.setModel(modelo);

} else if (optTri3.isSelected()) {

String c = "Julio,Agosto,Septiembre";

modelo.addElement(c);

lstMeses.setModel(modelo);
} else if (optTri4.isSelected()) {

String d = "Octubre,Noviembre,Diciebre";

modelo.addElement(d);

lstMeses.setModel(modelo);

-Lo que nos permite el siguiente código es pasar los datos de la tabla Trimestres a el JList.

-Es importante saber que el código que se implemento es un método que luego se instancia
dentro del evento de cada botón:

-Ahora para seleccionar un elemento del JList y pasarlo a el etiMes programamos lo siguiente:

private void seleccionar() {

etiMes.setText((String) lstMeses.getSelectedValue());

Por último, para el botón Vaciar hacemos lo siguiente: Pasar los datos de la lista a un
DefaultListModel que nos permite como propiedad eliminar todos los elementos de la lista.

public void eliminar() {

DefaultListModel listmodel = (DefaultListModel) (lstMeses.getModel());

listmodel.removeAllElements();

etiMes.setText("");

Resultado Final:
Conclusiones:

-Cada vez que asignamos alguna opción del JRadioButton y presionamos el botón Rellenar este
pasa los datos que tiene, así con todas las opciones.

-Cuando seleccionamos alguno de los datos de la tabla del JList este contenido pasa
directamente a el JLabel.

Ejercicio Guiado 6:

1.- Creamos un nuevo JFrame, al que llamaremos Ventana.

2.- Lo que haremos a continuación es agregar dos JButton y cambiamos sus nombres a btn1 y
btn2 y borramos el texto que exista en estos, además que agregamos los colores respectivos
Rojo y Plomo.
3.- Para esta parte no importara mucho el orden que ubiquemos nuestros botones porque el
diseño de ubicarlos uno sobre otro lo haremos en base al código.

- El primer método Principal que haremos se basa en lo siguiente: Ubicar los botones en
posiciones específicas asignando nosotros las coordenadas para que parezca que un botón está
ubicado sobre otro

- (Definiremos largo, altura, y posiciones (X, Y))

private void Inicializar() throws Exception {

this.getContentPane().setLayout(null);

this.setSize(new Dimension(430, 344));

btn2.setText("");

btn2.setBounds(new Rectangle(100, 30, 400, 400));

btn2.setText("Etiqueta");

btn1.setBounds(new Rectangle(140, 70, 400, 400));

this.getContentPane().add(btn1, null);

this.getContentPane().add(btn1, null);

4.- Llamamos a nuestro botón principal que está ubicado en la parte frontal “Etiqueta”, el botón
2 no va a tener un texto en específico solo btn1, que es el que ejecutara las funciones principales.

-Ahora en el constructor Ventana llamaremos a nuestro método dentro de tun try – catch para
evitar posibles errores de ejecución. (Las líneas de código adicionales a esta es:

setSize(), obtenemos el tamaño específico de la ventana y setLocationRelativeTo(): para que


se posicione en el centro de la pantalla).

public Ventana() {

initComponents();

try {

Inicializar();

} catch (Exception e) {

e.printStackTrace();

}
setSize(650, 600);

setLocationRelativeTo(null);

5.- Por ahora el JFrame va a tener esta apariencia:

6.- La primera condición o acción que se requiere es:

Cuando el ratón entre en la superficie de la etiqueta debe cambiar su texto por “Pulsame”.

-Esta acción lo haremos a través del evento mouseEntered.

*Para ello vamos a el btn2 y seleccionamos Events – Mouse – MouseEntered, la lógica está
en que cuando se pase a través del botón este tenga como texto la palabra “Pulsame”.

private void btn2MouseEntered(java.awt.event.MouseEvent evt) {

btn2.setText("Pulsame");

*Cuando posicionamos el ratón encima del botón el resultado es este:


7.- Cuando el ratón salga de la superficie de la etiqueta debe cambiar el texto de esta otra vez
por “Etiqueta”.

*Vamos a el btn2 y seleccionamos Events – Mouse – MouseExited

private void btn1MouseExited(java.awt.event.MouseEvent evt) {

btn2.setBounds(new Rectangle(100, 30, 400, 400));

btn2.setText("Etiquetas");

*Vuelve a su estado original.

8.- Por último, el efecto que se quiere dar es: Cuando se pulse un botón del ratón sobre la
etiqueta, esta debe moverse de sitio de forma que parezca que se ha pulsado como si fuera un
botón.

- Para llegar a realizar esta actividad ocupamos el siguiente código.

* La lógica aplicada se basa en lo siguiente: Cuando se presiona el botón movemos de


coordenadas el btn1, hacia las mismas del btn2 de este modo parece que el botón ingreso
dentro de otro botón. Luego el texto que le asignamos al botón es “Pulsado”

private void btn2MousePressed(java.awt.event.MouseEvent evt) {

btn2.setBounds(new Rectangle(140, 70, 400, 400));

btn2.setText("");

btn2.setText("Pulsado");

}
Conclusiones:

- mouseEntered. Cuando el ratón entre en la superficie de la etiqueta debe cambiar su texto


por “Pulsame”.

mouseExited. Cuando el ratón salga de la superficie de la etiqueta debe cambiar el texto de


esta otra vez por “Etiqueta”.

mousePressed. Cuando se pulse un botón del ratón sobre la etiqueta, esta debe moverse de
sitio de forma que parezca que se ha pulsado como si fuera un botón

Vous aimerez peut-être aussi