SoloCodigo

Programación General => Java => Mensaje iniciado por: Altareum en Sábado 27 de Mayo de 2006, 00:48

Título: Problema Con Imagenes En J2me
Publicado por: Altareum en Sábado 27 de Mayo de 2006, 00:48
Buenas, hace una semana estoy aprendiendo J2Me (Java para celulares), bueno, la cosa es que estoy siguiendo un tutorial de Porgramacion.com y la cosa, es que quiero poner una imagen y me tira error... y no se porque... de hecho, vi en unos ejemplos que me vinieron con el Wireless Toolkit y andan, pero cuando intento hacer no me funiona....

Este es el código (lo resumo un poco, total el resto es lo basico para que el programa ande):

Citar
public class Nacho extends MIDlet implements CommandListener {
   private Image img;
   .....
   public Nacho() {
  ...
  img = Image.createImage("logo.png");
  ...
   }
}


Y este es el error que me devuelve cuando lo compilo:
Citar
Building "Nacho"
C:\WTK22\apps\HelloWorld\src\Nacho.java:27: unreported exception java.io.IOException; must be caught or declared to be thrown
  img = Image.createImage("logo.png");
                                       ^
1 error
com.sun.kvem.ktools.ExecutionException
Build failed


Si saco la linea en cuestion, anda barbaro, pero con esa linea, no ....

alguien sabe el porqué ???


Altareum.
Título: Re: Problema Con Imagenes En J2me
Publicado por: hdr en Sábado 27 de Mayo de 2006, 04:11
la verdad no programo en java, pero segun se las operaciones de io deben estar entre una sentencia TRY CATCH.
Título: Re: Problema Con Imagenes En J2me
Publicado por: jpaler en Domingo 28 de Mayo de 2006, 03:20
altareum... lo q pasa es q no estas capturando la
posible excepcion q puede arrojar ese metodo.

mira:
Código: Text
  1.  
  2. try {
  3.         Image image = Image.createImage(logo.png);
  4.   //alert.setImage(image);
  5.     }
  6. catch (java.io.IOException x) {
  7.         //System.out.println("NO SE PUDO CREAR LA IMAGEN");
  8. }
  9.  
  10.  

..q tal... prueba a ver si asi te anda y luego comentas como te fue...listo!!!
Título: Re: Problema Con Imagenes En J2me
Publicado por: Altareum en Martes 30 de Mayo de 2006, 00:21
Bueno, les cuento que eso anda bárbaro, excepto por el hecho de que ahora no me carga la imagen. Este esl código que estoy usando (lo pongo completo):

Código: Text
  1.  
  2. import javax.microedition.midlet.*;
  3. import javax.microedition.lcdui.*;
  4. import java.io.IOException;
  5.  
  6. public class Nacho extends MIDlet implements CommandListener {
  7.  
  8.   private Command Ok, Salir, okConfig;
  9.   private Display pantalla;
  10.   private Image img;
  11.   private Alert alt;
  12.  
  13.   public Nacho() {
  14.     try{
  15.       Image img = Image.createImage("res/logo.png");
  16.     }catch(java.io.IOException e){
  17.       System.err.println("No se pudo encontrar la imágen");
  18.     }
  19.     alt = new Alert("coco", "Mira a Duke!!!", img, AlertType.ERROR);
  20.   }  
  21.  
  22.   public void startApp() throws MIDletStateChangeException {
  23.     pantalla = Display.getDisplay(this);
  24.     pantalla.setCurrent(alt);
  25.   }
  26.  
  27.  
  28.  
  29.   public void pauseApp() {
  30.   }
  31.  
  32.   public void destroyApp(boolean incondicional) {
  33.   }
  34.  
  35.   public void commandAction(Command c, Displayable s) {
  36.   }
  37.  
  38. }
  39.  
  40.  

Bueno, la cosa es simple, no muestra la imágen, y cuando lo ejecuto, en el 'compilador' me muestra el texto "No se pudo encontrar la imágen".
Lo de la ruta de la imagen, bueno, la puse en la carpeta res (como leí que convenía hacerlo) e intenté poniéndola en la carpeta src. También prove distintas convinaciones para el path de la imágen desde el código ("res/logo.png", "/res/logo.png", "logo.png", etc...)  y siempre lo mismo.

Alguien sabe por qué es ?????


Altareum.
Título: Re: Problema Con Imagenes En J2me
Publicado por: shadow_rev en Martes 30 de Mayo de 2006, 18:15
Bueno, siempre puedes intentar usando la ruta absoluta......... :P

Por si no me comprendes, pon la ruta desde el directorio raiz. En Windows sería "C:\<donde instalaste el J2ME>\<directorio de aplicaciones>\<directorio de la aplicacion>\res\logo.png" o algo asi.

De todas formas tengo que consultar la documentacion, hace rato que deje de cacharrear con ese paquete :nosweat:
Título: Re: Problema Con Imagenes En J2me
Publicado por: jpaler en Miércoles 31 de Mayo de 2006, 06:31
Altareum.... prueba esto pa' ver como te va:

Código: Text
  1.  
  2.         File f = new File( &#34;res/logo.png&#34; );
  3.         String s = f.getAbsolutePath();
  4.         s = &#34;file:&#34; + s;
  5.         URL url = null;
  6.         try {
  7.             url = new URL( s );
  8.         }
  9.         catch ( MalformedURLException error ) {}
  10.  
  11.  

con este codigo creas en la variable url la ruta correcta y absoluta
donde se encuentra la imagen y luego deberas pasarle esa url
al metodo q crea la imagen...

...,espero q utilizando una url te sirva...
comentame como te fue...