Professional Documents
Culture Documents
INTRODUCCIN
Las tecnologas mviles tienen mucho tiempo entre nosotros simplificando nuestras actividades
cotidianas facilitando nuestros trabajos, estudios o vida normal con sus innumerables aplicaciones
disponibles que se han ido incrementando con el tiempo.
Sin embargo, el desarrollo de la computacin como de la telefona celular han sido el parte aguas de la
evolucin de estas tecnologas que se despegaron con la incursin del Internet en la vida productiva y
econmica de la sociedad de hace ms de 20 aos. A pesar de que la telefona celular estaba en pleno
crecimiento su estructura era incipiente para soportar las aplicaciones bsicas del uso de Internet en las
dcadas de los noventas e inicio del 2000.
Una vez que el auge del internet y aplicaciones sobre la web alcanzo un nivel en que todo lo que se pudiera
pensar ya existira en ella, la telefona emprendi un camino sin retorno a superar la capacidad de
imaginacin de los usuarios, llevando a la palma de su mano, las aplicaciones propias de una computadora
persona a costos y velocidad que ningn modem de servicio local o banda ancha pudiera ofrecer.
Es por ello, que hablar de tecnologas mviles nos remonta inicialmente a lo simple que es un control
remoto, sin embargo, su capacidad lleva a centralizar todos los servicios en un dispositivo que aparte de
controlar un aparato, es capaz de estar conectado a miles de usuarios en el planeta usando una
infraestructura de comunicaciones poco imaginables para la corta historia de estos entre nosotros, es por
ello, que el estudio de la tecnologas mviles se ha convertido en una parte fundamental de la ingeniera
similar a una ciencia exacta que nos ayude comprender la situacin actual de las mismas y el futuro que
podemos a llegar a tener con el uso de esta tecnologa.
La telefona mvil, tambin llamada telefona celular, bsicamente est formada por dos grandes partes:
una red de comunicaciones (o red de telefona mvil) y los terminales (o telfonos mviles) que permiten
el acceso a dicha red.
El telfono mvil es un dispositivo inalmbrico electrnico que permite tener acceso a la red de telefona
celular o mvil. Se denomina celular debido a las antenas repetidoras que conforman la red, cada una de
las cuales es una clula, si bien existen redes telefnicas mviles satelitales. Su principal caracterstica es
su portabilidad, que permite comunicarse desde casi cualquier lugar.
Aunque su principal funcin es la comunicacin de voz, como el telfono convencional, su rpido
desarrollo ha incorporado otras funciones como son cmara fotogrfica, agenda, acceso a Internet,
reproduccin de vdeo e incluso GPS y reproductor mp3.
Paita, 2013
4. Aade tres JCheckBox y cambia el texto de ellos, de forma que aparezca Perro, Gato
y Ratn.
5. Debe cambiar el nombre de cada uno de ellos. Se llamarn: chkPerro, chkGato, chkRaton.
6. La ventana tendr el siguiente aspecto cuando termine:
Paita, 2013
CONCLUSIN
Los cuadros de verificacin (JCheckBox) se usan cuando quieres seleccionar varias
opciones.
Paita, 2013
4. Una vez aadido el panel en el JFrame, le pondremos un borde para poder localizarlo
fcilmente. Debes hacer lo siguiente:
a. Selecciona el panel que has aadido.
b. Activa la propiedad Border (botn con tres puntos)
c. Busca el tipo de borde llamado TitledBorder (borde con ttulo) y pon el ttulo
colores.
Paita, 2013
6. Ahora debes aadir tres botones de opcin (botones de radio) dentro del panel. Estos
botones son objetos del tipo JRadioButton.
7. Aade tres JRadioButton y cambia el texto de ellos, de forma que aparezca Rojo, Verde
y Azul.
8. Debe cambiar el nombre de cada uno de ellos. Se llamarn: optRojo, optVerde, optAzul.
9. La ventana tendr el siguiente aspecto cuando termine:
10. Si ejecuta el programa, observar que pueden seleccionarse varios colores a la vez. Esto
no es interesante, ya que los botones de opcin se usan para activar solo una opcin entre
varias.
P.T. JOS MARIANO F.HERNNDEZ PANTA
Paita, 2013
Paita, 2013
Paita, 2013
CONCLUSIN
Los botones de opcin, tambin llamados botones de radio (JRadioButton) se usan
cuando quieres que el usuario pueda elegir una opcin de entre varias.
Es interesante que los botones de radio aparezcan dentro de un panel JPanel. Se
recomienda colocar un borde al panel.
Es totalmente necesario aadir un objeto del tipo ButtonGroup, y hacer que los botones
de radio pertenezcan a dicho grupo. En caso contrario, ser posible activar varios
botones de opcin a la vez.
EJERCICIO GUIADO. JAVA: CUADROS DE LISTA
1. Realiza un nuevo proyecto.
2. En la ventana principal debes aadir lo siguiente:
a. Un botn Aceptar llamado btnAceptar.
b. Una etiqueta con borde llamada etiResultado.
Paita, 2013
4. Cmbiale el nombre al JList. Ten cuidado, ya que en los JList aparecen siempre dentro
de otro objeto llamado jScrollPane. Si miras en el Inspector, vers que al pulsar en el
botn + del jScrollPane aparecer tu JList:
Paita, 2013
Paita, 2013
13. Vamos a mejorar el programa. Puede suceder que el usuario no seleccione ningn valor
del cuadro de lista, y sera interesante en este caso que el programa avisara de ello.
Cambie el cdigo del botn Aceptar por este otro cdigo:
String mensaje;
if (lstColores.getSelectedIndex()==-1) {
mensaje="No hay un color seleccionado.";
} else {
mensaje="El color seleccionado es: "+lstColores.getSelectedValue().toString();
}
etiResultado.setText(mensaje);
Paita, 2013
16. Se podra haber prescindido del botn aceptar si el cdigo anterior se hubiera puesto en
el evento mouseClicked del cuadro de lista en vez de en el actionPerformed del botn
Aceptar. En este caso, cada vez que se seleccionara un elemento de la lista,
automticamente aparecera el mensaje en la etiqueta.
Se anima a que realice esta modificacin.
CONCLUSIN
El objeto JList permite crear cuadros de lista. Estos objetos contienen una serie de
elementos que pueden ser seleccionados.
A travs del mtodo getSelectedValue se puede obtener el elemento que est
seleccionado. (Recuerda convertirlo a cadena con toString)
A travs del mtodo getSelectedIndex se puede saber la posicin del elemento
seleccionado. Si este ndice es -1, entonces sabremos que no hay ningn elemento
seleccionado.
Paita, 2013
5. Los elementos del cboColores pueden ser cambiados a travs de la propiedad Model.
Selecciona el combo y activa la propiedad Model (el botoncito con los tres puntos)
Aparecer lo siguiente:
Paita, 2013
6. Al igual que pasaba con los cuadros de lista, se pueden eliminar los elementos que
contiene el combo y aadir elementos propios. Use los botones Aadir y Eliminar para
aadir la siguiente lista de elementos:
Rojo
Verde
Azul
7. Ejecuta el programa y observa el funcionamiento del desplegable...
8. Vamos a hacer que cuando se elija un elemento del desplegable, en la etiqueta aparezca
un mensaje indicando el color elegido.
Para ello, debes programar el evento actionPerformed del combo y aadir el siguiente
cdigo:
P.T. JOS MARIANO F.HERNNDEZ PANTA
Paita, 2013
11. Los cuadros combinados pueden funcionar tambin como cuadros de texto. Es decir,
pueden permitir que se escriba texto dentro de ellos. Para hacer esto, basta con cambiar
su propiedad editable y activarla.
Paita, 2013
12. Ejecuta el programa y observa como se puede escribir dentro del combo. Al pulsar Enter,
el programa funciona igualmente con el texto escrito.
Se escribe aqu y
se pulsa enter
CONCLUSIN
Los combos son listas desplegables donde se puede elegir una de las opciones
propuestas.
Los combos pueden funcionar tambin como cuadros de textos, si se activa la opcin
editable.
A travs del mtodo getSelectedItem se puede extraer la opcin seleccionada o el texto
escrito en el combo.
Paita, 2013
Paita, 2013
5. Aade dos botones al formulario. Uno de ellos tendr el texto Curso 1 y se llamar
btnCurso1 y el otro tendr el texto Curso 2 y se llamar btnCurso2.
Paita, 2013
modelo.addElement("Ana");
modelo.addElement("Marta");
modelo.addElement("Jose");
g. Finalmente asociamos el modelo creado al cuadro de lista de la siguiente
forma:
lstNombres.setModel(modelo);
h. As pues, aqu tienes una forma de cambiar el contenido de un cuadro de lista
desde el propio programa.
9. Prueba a ejecutar el programa. Observa como cuando pulsas cada botn cambia el
contenido de la lista:
Click y cambia el
listado.
Paita, 2013
Esta instruccin hace que al seleccionar un elemento del cuadro de lista ste aparezca en
la etiqueta etiResultado. Recuerda que el mtodo getSelectedValue permite recoger el
elemento seleccionado (hay que convertirlo a cadena con toString)
11. Ejecuta el programa:
Click y aparece el
elemento
seleccionado en la
etiqueta.
12. Una propuesta. Aada un botn Vaciar llamado btnVaciar. Este botn vaciar el
contenido de la lista. Para esto lo nico que tiene que hacer es crear un modelo y, sin
introducir ningn valor en l, asociarlo al cuadro de lista.
CONCLUSIN
Un cuadro de lista es un objeto que contiene a su vez otro objeto denominado modelo.
El objeto modelo es el que realmente contiene los datos de la lista.
Cuadro de lista Modelo Datos
Se puede crear un modelo y luego introducir datos en l. Luego se puede asociar ese
modelo a la lista. De esta manera se puede cambiar el contenido de la lista en cualquier
momento.
Paita, 2013
3. Elimina todos los elementos que contenga el combo. Recuerda, debes usar la propiedad
model del combo para cambiar sus elementos.
4. Despus de haber hecho todo esto, tu ventana debe quedar ms o menos as:
Paita, 2013
Se pulsa y se rellena
automticamente
Paita, 2013
9. La nica diferencia de este cdigo es el for, que est diseado para que se introduzcan
los nmeros impares comprendidos entre 0 y 10 dentro del modelo.
10. Finalmente se programar el actionPerformed del combo para que al seleccionar un
elemento este aparezca en la etiqueta. Esto se hace con una simple instruccin:
etiResultado.setText(cboNumeros.getSelectedItem().toString());
12. Sera interesante aadir un botn Vaciar llamado btnVaciar que vaciara el contenido del
combo. Esto se hara simplemente creando un modelo vaco y asignarlo al combo. Se
anima al alumno a que realice esta mejora.
CONCLUSIN
Un combo, al igual que los cuadros de lista, es un objeto que contiene a su vez otro objeto
denominado modelo.
El objeto modelo es el que realmente contiene los datos del combo.
Combo Modelo Datos
Se puede crear un modelo y luego introducir datos en l. Luego se puede asociar ese
modelo al combo. De esta manera se puede cambiar el contenido del combo en cualquier
momento.
Paita, 2013
Son elementos muy comunes en los programas. A travs de los dos botones triangulares se
puede hacer que el valor del cuadro aumente o disminuya. Tambin se puede escribir
directamente un valor dentro del cuadro.
Ejercicio guiado
1. Crea un nuevo proyecto.
2. Aade en l un JSpinner. Su nombre ser spiValor.
5. Interesa que cuando cambie el JSpinner (ya sea porque se pulsaron los botones
triangulares o porque se escribi dentro) aparezca el valor correspondiente dentro de la
etiqueta. Para ello, tendr que programar el evento stateChanged del JSpinner.
En el evento stateChanged introduzca el siguiente cdigo:
etiValor.setText("El valor es: "+spiValor.getValue().toString());
Paita, 2013
6. Como puedes observar, lo que hace el programa es recoger el valor que tiene el JSpinner
a travs del mtodo getValue y luego se lo asigna a la etiqueta con el clsico setText. (Es
muy parecido a los deslizadores)
Debes tener en cuenta que el valor devuelto no es un nmero ni una cadena, as que en
el ejemplo se ha usado el mtodo toString() para convertirlo a una cadena.
7. Prueba el programa y observa su funcionamiento:
El usuario modifica el
valor del JSpinner...
Y aqu aparece el valor
seleccionado.
8. Observa como los valores del JSpinner aumentan o disminuyen en 1. Por otro lado, no
parece haber un lmite para los valores del JSpinner.
La pregunta ahora es: Se puede modificar el contenido del JSpinner de forma que tenga
unos valores concretos? La respuesta es s. Veamos como hacerlo.
9. Entra dentro del cdigo del programa y, dentro del constructor, aade este cdigo debajo
de initComponents:
SpinnerNumberModel nm = new SpinnerNumberModel();
nm.setMaximum(10);
nm.setMinimum(0);
spiValor.setModel(nm);
Paita, 2013
d. En la segunda lnea se define como valor mximo del modelo el 10, a travs de un
mtodo llamado setMaximum.
e. En la tercera lnea se define como valor mnimo del modelo el 0, a travs de un
mtodo llamado setMinimum.
f.
g. Este cdigo, en definitiva, har que el JSpinner muestre los valores comprendidos
entre 0 y 10.
11. Prueba el programa y observa los valores que puede tomar el JSpinner.
12. Vamos a aadir otra mejora. Cambie el cdigo del constructor por este otro. (Observa que
solo se ha aadido una lnea):
SpinnerNumberModel nm = new SpinnerNumberModel();
nm.setMaximum(10);
nm.setMinimum(0);
nm.setStepSize(2);
spiValor.setModel(nm);
Esta lnea usa un mtodo del modelo del JSpinner que permite definir el valor de cambio
del JSPinner. Dicho de otra forma, esta lnea hace que los valores del JSpinner salten de
2 en 2.
14. Ejecuta el programa de nuevo y observa cmo cambian los valores del JSpinner.
15. El modelo del JSpinner tiene tambin un mtodo llamado setValue que permite asignar
un valor inicial al modelo. Pruebe a usar este mtodo para hacer que el JSpinner muestre
desde el principio el valor 4.
CONCLUSIN
P.T. JOS MARIANO F.HERNNDEZ PANTA
Paita, 2013
La barra tiene un valor mnimo, que se consigue haciendo que el recuadro de la barra de
desplazamiento est pegado a la parte izquierda.
Valor mnimo
Paita, 2013
Ejercicio guiado
1. Para comprender mejor el funcionamiento de las barras de desplazamiento se crear un
proyecto nuevo.
2. Aade en el proyecto una barra de desplazamiento (JScrollBar) y llmala desValor.
Paita, 2013
7. Como ves, se coloca en la etiqueta el valor de la barra. El valor de la barra se obtiene con
el mtodo getValue. Ejecuta el programa para ver su funcionamiento.
Pulsa aqu y observa
como el valor cambia
poco a poco
Paita, 2013
Paita, 2013
10. Tal como se ha indicado anteriormente, pasa algo raro con la barra de desplazamiento
cuando esta est al mximo. Se esperaba que alcanzara el valor 150, y sin embargo, el
valor mximo alcanzado fue de 145. La explicacin es la siguiente:
Valor mximo (150)
***
Paita, 2013
CONCLUSIN
Las JScrollBars son barras de desplazamiento independientes. Al igual que los JSliders,
las JScrollBars tienen un valor concreto, que puede ser obtenido a travs del mtodo
getValue.
Entre las caractersticas programables de una barra de desplazamiento, tenemos las
siguientes:
- Valor mnimo (propiedad Minimum)
- Valor mximo (propiedad Maximum)
- Incremento unitario (propiedad UnitIncrement)
- Incremento en bloque (propiedad BlockIncrement)
- Tamao del recuadro de la barra (propiedad VisibleAmount)
Ejercicio guiado
1. Veamos como aadir una barra de mens a nuestras aplicaciones. En primer lugar, crea
un proyecto con el NetBeans.
2. Aade a tu ventana un objeto JMenuBar
3. En la parte superior de tu ventana aparecer esto:
Paita, 2013
9. Puedes aadir ms opciones principales a la barra de mens haciendo clic con el derecho
sobre el objeto de la barra de mens y activando la opcin Aadir JMenu.
10. Aada dos opciones ms a la barra de mens. El inspector debe tener ahora el siguiente
aspecto:
P.T. JOS MARIANO F.HERNNDEZ PANTA
Paita, 2013
12. Cambia los nombres de las dos nuevas opciones. Sus nombres sern: menuEdicion y
menuInsertar.
13. Cambia los textos de ambas opciones. Sus textos sern: Edicin e Insertar.
14. Ya tenemos creada la barra de mens (JMenuBar) con sus opciones principales (JMenu).
Ahora se tendrn que definir las opciones contenidas en cada opcin principal. Por
ejemplo, crearemos las opciones contenidas en el men Archivo.
15. Haz clic con el botn derecho sobre el objeto menuArchivo y activa la opcin Aadir
JMenuItem.
Paita, 2013
Los JMenuItem son objetos que representan las opciones contenidas en los mens
desplegables de la barra de mens.
16. Aade un JMenuItem ms al menuArchivo y luego cambia el nombre a ambos. Sus
nombres sern menuItemAbrir y menuItemGuardar. El aspecto del Inspector ser el
siguiente:
17. Usa ahora la propiedad Text de ambos JMenuItem para asignarles un texto. El primero
tendr el texto Abrir y el segundo el texto Guardar.
18. Ya podemos ejecutar el programa para ver que es lo que se ha conseguido. Use el men:
Observa como la opcin Archivo se despliega mostrando dos submens: Abrir y Guardar.
19. Seguiremos aadiendo elementos al men. Ahora haga clic con el derecho sobre el
elemento menuArchivo y aada un JSeparator.
Paita, 2013
Los JSeparator son objetos que definen una separacin entre las opciones de un men. Cmbiele
el nombre y llmelo separador1:
20. Aada un nuevo JMenuItem al men Archivo y ponle el nombre menuSalir. El texto de
esta opcin ser Salir (use su propiedad text) El aspecto del Inspector ser el siguiente:
Paita, 2013
24. Ahora aade dentro del menuColores tres JMenuItem llamados respectivamente:
menuItemRojo, menuItemVerde, menuItemAzul. Sus textos sern Rojo, Verde y Azul.
Paita, 2013
La opcin Edicin (JMenu) contiene una opcin Colores (JMenu) que a su vez contiene
las opciones Rojo, Verde y Azul (JMenuItems)
26. De nada sirve crear un men si luego este no reacciona a las pulsaciones del ratn. Cada
objeto del men tiene un evento ActionPerformed que permite programar lo que debe
suceder cuando se active dicha opcin del men.
27. Marque en el inspector el objeto menuItemRojo y acceda a su evento ActionPerformed.
Dentro de l programe este sencillo cdigo:
this.getContentPane().setBackground(Color.RED);
Este cdigo cambia el color de fondo de la ventana a rojo.
28. Compruebe el funcionamiento de la opcin Rojo del men ejecutando el programa.
29. Programa t mismo las opciones Verde y Azul.
CONCLUSIN
Las barras de mens son un conjunto de objetos de distinto tipo que se contienen unos a
los otros:
La barra en s est representada por un objeto del tipo JMenuBar.
La barra contiene opciones principales, representadas por objetos JMenu.
Las opciones principales contienen opciones que aparecen al desplegarse el men. Esta
opciones son objetos del tipo JMenuItem.
Un JMenu tambin puede contener otros JMenu, que a su vez contendrn JMenuItems.
Tambin puede aadir separadores (JSeparator) que permiten visualizar mejor las
opciones dentro de un men.
Paita, 2013