1_practica calculadora j2me

9
UNIDADES TECNOLÓGICAS DE SANTANDER INGENIERIA DE TELECOMUNICACIONES PROGRAMACION DE DISPOSITIVOS MOVILES 1  Vamos a crear ahora nuestra calculadora que por cierto en esta vez sólo hará operaciones básicas de suma, resta, multiplicación y división; en entradas posteriores te hablaré de algo más que esto. Vuelve a netbeans y crea un proyecto: File-> New Project; desplázate hasta llegar a Java ME y al seleccionar esto verás al lado derecho Mobile Aplication, seleccionado y dale siguiente. Pon el nombre que desees al proyecto, yo lo llame “CalculadoraBasica” es opcional que deshabilites el ‘Create Hello Midlet’ si no deseas que NetBeans cree automáticamente ya un midlet por nosotros, finaliza con esto la creación de un proyecto.

Upload: christian-leonardo-diaz-hurtado

Post on 30-Oct-2015

155 views

Category:

Documents


0 download

TRANSCRIPT

7/15/2019 1_practica Calculadora J2ME

http://slidepdf.com/reader/full/1practica-calculadora-j2me 1/8

UNIDADES TECNOLÓGICAS DE SANTANDER INGENIERIA DE TELECOMUNICACIONES 

PROGRAMACION DE DISPOSITIVOS MOVILES 1

 Vamos a crear ahora nuestra calculadora que por cierto en esta vez sólo hará operacionesbásicas de suma, resta, multiplicación y división; en entradas posteriores te hablaré de algomás que esto. Vuelve a netbeans y crea un proyecto: File-> New Project; desplázate hasta

llegar a Java ME y al seleccionar esto verás al lado derecho Mobile Aplication, seleccionado ydale siguiente.

Pon el nombre que desees al proyecto, yo lo llame “CalculadoraBasica” es opcional que

deshabilites el ‘Create Hello Midlet’ si no deseas que NetBeans cree automáticamente ya unmidlet por nosotros, finaliza con esto la creación de un proyecto.

7/15/2019 1_practica Calculadora J2ME

http://slidepdf.com/reader/full/1practica-calculadora-j2me 2/8

UNIDADES TECNOLÓGICAS DE SANTANDER INGENIERIA DE TELECOMUNICACIONES 

PROGRAMACION DE DISPOSITIVOS MOVILES 2

Seleccionamos el emulador, el visor, la configuración del visor y configuración del archivo

7/15/2019 1_practica Calculadora J2ME

http://slidepdf.com/reader/full/1practica-calculadora-j2me 3/8

UNIDADES TECNOLÓGICAS DE SANTANDER INGENIERIA DE TELECOMUNICACIONES 

PROGRAMACION DE DISPOSITIVOS MOVILES 3

Empecemos a añadir un midlet, esto es, file->new file; ahi al vemos una ventana similar a lasiguiente y elegimos en la izquierda ’MIDP’ y a su derecha ‘Visual Midlet’ presiona siguiente y

Dale un nombre al nuevo midlet que estamos creando, ten en cuenta que este nombre es elque verás en el equipo móvil antes de ejecutar. En este caso se nombro “CalculadorSimple”,presiona finish

y nos muestra la siguiente ventana:

7/15/2019 1_practica Calculadora J2ME

http://slidepdf.com/reader/full/1practica-calculadora-j2me 4/8

UNIDADES TECNOLÓGICAS DE SANTANDER INGENIERIA DE TELECOMUNICACIONES 

PROGRAMACION DE DISPOSITIVOS MOVILES 4

 A partir de eso podemos decir que en el lado derecho del IDE vemos varios componentes enla paleta: Displayables, Commands, Elements, Items, entre otros. En J2ME, un objetoDisplayable contiene la información que va a ser visualizada, y son controlados por un objeto

Display quien gestiona qué objeto Displayable se mostrará al usuario. En MIDP existen trescategorías de Displayable: Screen con estructura predefinida: Alert, List y TextBox, queencapsulan componentes de interfaz complejos y que las aplicaciones no pueden enriquecercon nuevos componentes. Screen genérica: Form, las aplicaciones pueden llenar este tipode pantalla con texto, imágenes u otros componentes de interfaz de usuario. Canvas, lasaplicaciones tienen control total sobre la aparición de componentes en el display y puedeacceder directamente a eventos de bajo nivel. Por otro lado la clase Display proporciona losmétodos que nos permiten controlar la visualización de los objetos Displayable y obtenerpropiedades del display (si soporta color o no, número de colores,…).

 Agreguemos un ‘Displayable’ en nuestro midlet para esto arrastra un form desde la paleta almidlet o bien dentro del midlet dale clic derecho dentro de new/add elije form.

En la parte superior del midlet veremos tres fichas: Source, Screen, Flow y Analizer; nosinteresa las tres primeras ya que al habilitar Source estaremos viendo todo el código que vagenerando el IDE, dentro de Screen vemos el displayable en su totalidad; y pues Flow es elestado en que vemos en la imagen y no es nada mas que como una visualización “resumida” de los diferentes displayables que estamos haciendo uso, en nuestro caso es solo uno pues elprimero que viste solo es el midlet propiamente dicho.

Ok, ahora que ya tenemos un form dentro nuestro primer midlet solo debemos arrastar con

el mouse desde el midlet el comando Started hasta nuestro form, con esta acción estamosdiciendo que en cuanto arranque el midlet debe de ir directamente al form. Dirígete al formagregado y añade un Comand ( clic derecho sobre form new/add -> exitCommand) yrealizamos la misma acción que inicimos con Started pero esta vez en sentido contrario, lediremos al form que cuando el usuario diga salir vaya directamente al inicio del midlet. Poresta vez omitiré cuales son los estados en los que se encuentra un midlet pues al inicio

7/15/2019 1_practica Calculadora J2ME

http://slidepdf.com/reader/full/1practica-calculadora-j2me 5/8

UNIDADES TECNOLÓGICAS DE SANTANDER INGENIERIA DE TELECOMUNICACIONES 

PROGRAMACION DE DISPOSITIVOS MOVILES 5

dijimos que son como los applet’s pero no indicamos a detalles cuales son éstos pero yavamos conociendo a dos estados (Started, Resumed).

Selecciona el form y habilita la pestaña Screen o simplemente dale doble clic a nuestrodisplayable form, te encontrarás con una pantalla similar a la que te muestro en la siguienteimagen.

7/15/2019 1_practica Calculadora J2ME

http://slidepdf.com/reader/full/1practica-calculadora-j2me 6/8

UNIDADES TECNOLÓGICAS DE SANTANDER INGENIERIA DE TELECOMUNICACIONES 

PROGRAMACION DE DISPOSITIVOS MOVILES 6

 

Es aqui donde el usuario final vera y operará para poder realizar la tarea por la que iniciamosesta entrada.

 A mi se me ocurre que el usuario solo tendrá dos operandos que nos dará como dato y

nosotros le devolvemos en otro lado de la misma ventana el resultado de la operación,siempre y cuando no haya sucedido ningún error. Es asi que arrastraré tres componentes dela paleta que se llaman textField de la opción Items.

 Ahora en la parte inferior de la paleta podemos ver las propiedades de cada componentesegún hayamos seleccionado, por ejemplo, cambiaré el título del form que el usuario verá;para esto me voy a su propiedad title y ahora procedo a cambiar algunas propiedades de lostextfield como ser: label (titulo) y su propiedad Input Constraint pues le diremos que soloacepte números decimales y así controlamos posibles errores que como siempre el usuarioaunque sea intencionalmente los comete (esto es: sumar dos letras, introducir nombres comodato, etc); hacemos todos los cambios a decimal de todos los textField excepto para eltextField del resultado que lo dejaremos en su propiedad por defecto, ANY (ANY permiteescribir cualquier dato sea número o letra). Ahora le pongamos opciones para que puedahacer las 4 operaciones básicas pero de una en una, así que añádele 4 okCommand’s anuestro form y cambiemosle a cada uno de ellos su propiedad label e Instance Name porSuma y sumaComando respectivamente; hazlo para cada comando que añadiste.

Si hiciste todo correctamente verás algo similar a la imagen que te muestro.

7/15/2019 1_practica Calculadora J2ME

http://slidepdf.com/reader/full/1practica-calculadora-j2me 7/8

UNIDADES TECNOLÓGICAS DE SANTANDER INGENIERIA DE TELECOMUNICACIONES 

PROGRAMACION DE DISPOSITIVOS MOVILES 7

 

Hasta ahora lo único que hicimos fue arrastrar y soltar casi ni tocamos el teclado solo paraalgunas pequeñas cositas pero te preguntarás a que hora escribimos el código, pues veamostodo lo que ya hizo por nosotros el entorno de desarrollo. Habilita la ficha Source y revisa dearriba hacia abajo, ¿te parece mucho?.

Bien, ahora vámonos a escribir código nosotros mismos y programemos esos comandos queañadimos arriba. ¿Estas en Source verdad?, verás a tu izquierda todos los métodosimplementados hasta el momento los que por su puesto los escribió NetBeans; existen ciertaslíneas de código que no se nos permite modificar así que busquemos el método

 ‘commandAction(Command command, Displayable displayable) ‘ dale doble click y tellevará directo al método que modificaremos para nuestra calculadora. Te muestro unaimagen.

 Antes que nada necesitamos dos variables en las cuales almacenar los operandos que nos deel usuario. Luego según sea el comando hacemos la operacion de suma, resta, multiplicacióno división; no olvides programar también para cuando haya una división de controlar lasexcepciones pues puede que el usuario intente dividir entre cero (como generalmentesucede). Te muestro como quedo el mío:

double valor1= Double.parseDouble(this.textField.getString()); double valor2= Double.parseDouble(this.textField1.getString()); 

7/15/2019 1_practica Calculadora J2ME

http://slidepdf.com/reader/full/1practica-calculadora-j2me 8/8

UNIDADES TECNOLÓGICAS DE SANTANDER INGENIERIA DE TELECOMUNICACIONES 

PROGRAMACION DE DISPOSITIVOS MOVILES 8

if (displayable == form) { if (command == divideComando) {try { this.textField2.setString(String.valueOf(valor1/valor2)); } 

catch (Exception io){ this.textField2.setString(io.getMessage());}} else if (command == exitCommand) {exitMIDlet();} else if (command == multiplicaComando) {textField2.setString(String.valueOf(valor1*valor2));} else if (command == restaComando) {textField2.setString(String.valueOf(valor1-valor2));} else if (command == sumaComando) {textField2.setString(String.valueOf(valor1+valor2));} 

 }  

Esto fué todo compila el código (F9) si hay errores corrígelo luego ejecuta (F6) que ya todoestá listo!!. Verifica todos los eventos que escribiste, esto lo lograrás intentando escribir letraspor ejemplo, o caracteres especiales u otros como dato; verás que esto está controlado, así como también la división entre cero.