[RESOLVIDO]Imagem no canvas

Ola pessoal,
Estou começando com canvas, porém estou tendo dificuldades para carregar uma imagem.
Podem me ajudar?

import java.io.IOException;

import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;


public class TesteCanvas extends Canvas{
	Image fundo;
	int posX = 50;
	int posY = 50;
		
	public TesteCanvas(){
		try{
			fundo = Image.createImage("/fundo.png");
		}catch(IOException e){
			System.out.println("Imagem não pode ser carregada");
		}
	}
	

	public void paint(Graphics g){
		g.setColor(0,0,0);
		g.drawRect(50,5,60,20);// posX, posY, largura, altura 
		g.setColor(255,0,0);
		String teste="Testando";
		g.drawString(teste,60,7,Graphics.LEFT|Graphics.TOP);
		

	}
	
    public void keyPressed(int key){
        if(key == KEY_NUM2){
        	System.out.println("Tecla 2");
        	posY--;
        }
        if(key == KEY_NUM4){
        	System.out.println("Tecla 4");
        	posX--;
        }
        if(key == KEY_NUM5){
        	System.out.println("Tecla 5");
        }
        if(key == KEY_NUM6){
        	System.out.println("Tecla 6");
        	posX++;
        }
        if(key == KEY_NUM8){
        	System.out.println("Tecla 8");
        	posY++;
        }
        
        
    }



}

Principal


import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class MidletCanvas extends MIDlet implements CommandListener{
	Display tela;
	Command sair;
	TesteCanvas canvas;
	public MidletCanvas(){
		tela = Display.getDisplay(this);
		sair = new Command("Sair",Command.EXIT,0);
		
		canvas = new TesteCanvas();
		canvas.addCommand(sair);
		canvas.setCommandListener(this);
	}
	public void startApp(){
		tela.setCurrent(canvas);
	}
	public void pauseApp(){
	}

	public void destroyApp(boolean b){
	}
	
	public void commandAction(Command c, Displayable d)	{
		if(c==sair){
			destroyApp(true);
			notifyDestroyed();
		}
	}
}

Antes de mais vc criou a pasta res em seu projeto? Se sim, coloque ela lá. Depois dentro do metodo paint() pode desenhá-la. :lol:

Mas o problema é que ele não carrega nem a imagem.
está imprimindo “Imagem não pode ser carregada”

Você deve criar uma pasta chamada res de “recurso” em seu projeto, lá, colocar as imagens. Faça isso que o outro rapaz aqui também teve esse mesmo seu problema

Ja esta criada, mas continua dando o mesmo erro.

public TesteCanvas(){
		try{
			fundo = Image.createImage("res/fundo.png");
			
		}catch(IOException e){
			System.out.println("Imagem n�o pode ser carregada");
			
		}
	}

Cuidado, não confunda as coisas, se já existe a pasta, então ok, mas deixa o path como tava antes
fundo = Image.createImage("/fundo.png");
Qual ide estas usando?

Certo.
Estou usando o eclipse

Em seu projeto existe a pasta res?E dentro dela existe essa imagem?

Existe sim, e a imagem já está la.
não sei o porque desse erro.

Cara, o código ta certo, confira o nome da imagem, talvez, seja isso, se não for, desligue a máquina, faça uma prece e recomeçe! :wink:

kra, se nao for pedir demais, voce pode rodar esse codigo no seu com alguma imagem no lugar de fundo?
se puder, me envia por favor pois eu ja estou desesperado.
meu maior problema eh com imagens, o resto ta tranquilo.

Traquillo,acabei de fazer isso, apesar de nem precisar, e claro o funcionamento esta ok. Realmente não sei o que é, qual o wtk que estas usando e qual eclipse?

Estou utilizando o eclipse SDK com WTK 2.5.1