Buenas, hoy continuaremos nuestro ejemplo: Trabajando con la Clase Form. Ahora le agregamos alguna funcionalidad a nuestro formulario y mostraremos como obtener los datos que el usuario ingrese.
1 - Primero crearemos un atributo de Tipo: Command
2 - Creamos nuestro Comando guardar:
La clase Command recibe por parámetros:
* Titulo : El nombre del comando
* Tipo: El tipo de Comando podrás elegir entre:
Según tu comando deberás elegir el que mas corresponda con la acción de tu comando.
3 - Ahora tendremos que agregar nuestro comando al formulario, pero primero deberemos implementar la interface de CommandListener a nuestro MIDlet para que pueda recibir los comandos que agreguemos:
Al implementar esta interface nos pedirá que es necesario que nuestra clase tenga un método: commandAction, así que deberemos crearlo:
4 - Ahora agregamos nuestro comando al formulario:
Con la primera linea definimos quien responderá por los comandos, en este caso sera nuestra propia clase (o MIDlet), y después en la otra linea agregamos el comando creado anteriormente.
5 - Ya teniendo agregado nuestro comando al formulario lo único que nos queda por realizar son las acciones cuando el usuario seleccione el comando, tendremos que trabajar ahora dentro del método commandAction:
Entonces primero comparamos el comando ejecutado con nuestro comando, esto se realiza para saber que comando ejecuto el usuario. Si el comando "c" es igual a "guardar" entonces el usuario hizo clic en el comando guardar, y ahí adentro tendríamos que realizar lo correspondiente con los datos.
6 - Ahora creamos un comando para salir de la aplicación, primero creamos un atributo:
Creamos el comando:
y lo Agregamos al formulario:
Ahora dentro del método commandAction verificaremos si se ejecuto el comando salir:
Codigo Completo:
Y así podemos obtener los datos que el usuario introduce en el formulario.
Seguiremos con mas tutoriales...
Saludos
Maty!
1 - Primero crearemos un atributo de Tipo: Command
private Command guardar;
2 - Creamos nuestro Comando guardar:
guardar = new Command("Guardar", Command.OK, 0);
La clase Command recibe por parámetros:
* Titulo : El nombre del comando
* Tipo: El tipo de Comando podrás elegir entre:
Command.BACK
Command.CANCEL
Command.EXIT
Command.HELP
Command.ITEM
Command.OK
Command.SCREEN
Command.STOP
Según tu comando deberás elegir el que mas corresponda con la acción de tu comando.
3 - Ahora tendremos que agregar nuestro comando al formulario, pero primero deberemos implementar la interface de CommandListener a nuestro MIDlet para que pueda recibir los comandos que agreguemos:
public class ClaseTresMidlet extends MIDlet implements CommandListener
Al implementar esta interface nos pedirá que es necesario que nuestra clase tenga un método: commandAction, así que deberemos crearlo:
public void commandAction(Command c, Displayable d) {
}
4 - Ahora agregamos nuestro comando al formulario:
formulario.setCommandListener(this);
formulario.addCommand(guardar);
Con la primera linea definimos quien responderá por los comandos, en este caso sera nuestra propia clase (o MIDlet), y después en la otra linea agregamos el comando creado anteriormente.
5 - Ya teniendo agregado nuestro comando al formulario lo único que nos queda por realizar son las acciones cuando el usuario seleccione el comando, tendremos que trabajar ahora dentro del método commandAction:
if(c == guardar){
// obtenemos lo que se escribio en el TextFIeld
campo.getString();
// Obtenemos la fecha que el usuario introducio
fecha.getDate();
// Devuelve el valor del Gauge
volumen.getValue();
// Devuelve el numero de item seleccionado de la lista
lista.getSelectedIndex();
}
Entonces primero comparamos el comando ejecutado con nuestro comando, esto se realiza para saber que comando ejecuto el usuario. Si el comando "c" es igual a "guardar" entonces el usuario hizo clic en el comando guardar, y ahí adentro tendríamos que realizar lo correspondiente con los datos.
6 - Ahora creamos un comando para salir de la aplicación, primero creamos un atributo:
private Command salir;
Creamos el comando:
salir = new Command("Salir", Command.EXIT, 0);
y lo Agregamos al formulario:
formulario.addCommand(salir);
Ahora dentro del método commandAction verificaremos si se ejecuto el comando salir:
if(c == guardar){
// obtenemos lo que se escribio en el TextFIeld
campo.getString();
// Obtenemos la fecha que el usuario introducio
fecha.getDate();
// Devuelve el valor del Gauge
volumen.getValue();
// Devuelve el numero de item seleccionado de la lista
lista.getSelectedIndex();
}else if(c == salir){
// salimos de la Aplicacion
notifyDestroyed();
}
Codigo Completo:
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
/**
* @author matias
*/
public class ClaseTresMidlet extends MIDlet implements CommandListener {
private Display pantalla;
private Form formulario;
private ChoiceGroup lista;
private DateField fecha;
private Gauge volumen;
private StringItem texto;
private TextField campo;
private Command guardar;
private Command salir;
public ClaseTresMidlet(){
pantalla = Display.getDisplay(this);
guardar = new Command("Guardar", Command.OK, 0);
salir = new Command("Salir", Command.EXIT, 0);
formulario = new Form("Mi Formulario");
formulario.setCommandListener(this);
formulario.addCommand(guardar);
formulario.addCommand(salir);
lista = new ChoiceGroup("Opciones", ChoiceGroup.EXCLUSIVE);
lista.append("Opcion 1", null);
lista.append("Opcion 2", null);
lista.append("Opcion 3", null);
lista.append("Opcion 4", null);
fecha = new DateField("Aniversario", DateField.DATE);
volumen = new Gauge("Volumen", true, 10, 5);
texto = new StringItem("Mi texto", "USted esta completando nuestro formulario, Gracias");
campo = new TextField("Nombre", "", 30, TextField.ANY);
formulario.append(campo);
formulario.append(lista);
formulario.append(volumen);
formulario.append(texto);
formulario.append(fecha);
}
public void startApp() {
pantalla.setCurrent(formulario);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable d) {
if(c == guardar){
// obtenemos lo que se escribio en el TextFIeld
campo.getString();
// Obtenemos la fecha que el usuario introducio
fecha.getDate();
// Devuelve el valor del Gauge
volumen.getValue();
// Devuelve el numero de item seleccionado de la lista
lista.getSelectedIndex();
}else if(c == salir){
// salimos de la Aplicacion
notifyDestroyed();
}
}
}
Y así podemos obtener los datos que el usuario introduce en el formulario.
Seguiremos con mas tutoriales...
Saludos
Maty!
:)
ResponderBorrarobtenes los datos, y exactamente donde lo guardas? , xq tengo entendido que de la unica forma de guardar los datos es con MIR no?
ResponderBorrarHola K3RN3L en este tutorial no estamos guardando los datos en un almacenamiento persistente.
ResponderBorrarEspero poder traerles un tutorial para mostrarle como se puede guardar informacion en los dispositivos J2ME. Esto se realiza con los RecordStores.
Saludos...
Matias
www.matydeveloper.com.ar
Hola Matias, queria saber si tenes algo como este tutorial pero utilizando los RecordStores. Otra pregunta: para realizar un cotizador hay que utilizar algoritmos o se realiza de otra manera?
ResponderBorrarGracias.
Hola, hace mucho q no actualizo el blog, vere si puedo conseguirte algun tutorial de RecordStore. Con respecto al Cotizador que es lo que quieres hacer ?, un Cotizador de Monedas ?
ResponderBorrarle entiendo mas a este blog que a mi maestra
ResponderBorrar