Witam, mam problem z wyświetleniem obrazka w MIDlecie. Oto kod:
package hello;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class Midlet extends MIDlet {
public Midlet(){
disp = Display.getDisplay(this);
ekran = new Ekran();
}
public void startApp() {
disp.setCurrent(ekran);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
private Display disp;
private Ekran ekran;
private class Ekran extends Canvas{
public Ekran(){
try{
obrazek = Image.createImage("/mtbadge-small.gif");
}
catch(Exception e){
e.printStackTrace();
}
}
public void paint(Graphics g){
g.setColor(255, 255, 255);
g.fillRect(0, 0, 400, 400);
g.setColor(0, 0, 0);
g.drawImage(obrazek, 0, 0, Graphics.TOP);
}
private Image obrazek;
}
}
A oto błędy:
ERROR - UNKNOWN - C:/Builds/jme-sdk/javacall-javame-sdk-305/implementation/share/cms_sqlite/javacall_cms_content.c line 428: Can't insert new content data: constraint failed
3426 - ERROR - JSR258 - 3 - Can't create MediaObject: media file (screen.image_bg.png) is not found
3576 - ERROR - JSR258 - 3 - Can't find theme element (feature=activeScreen, role=background)
3576 - ERROR - JSR258 - 3 - Can't find theme element (feature=inputMode, role=backgroundImage)
3586 - CRITICAL - JSR258 - 3 - Can't find Chameleon element (id=161)
3586 - CRITICAL - JSR258 - 3 - Can't find Chameleon element (id=163)
3586 - CRITICAL - JSR258 - 3 - Can't find Chameleon element (id=164)
3586 - CRITICAL - JSR258 - 3 - Can't find Chameleon element (id=165)
3586 - CRITICAL - JSR258 - 3 - Can't find Chameleon element (id=182)
3586 - ERROR - JSR258 - 3 - Can't find theme element (feature=systemMenu, role=selectedItemBackground)
3606 - ERROR - JSR258 - 3 - Can't find theme element (feature=virtualKeyboard, role=virtualKeyboardBGImage)
WARNING - MMA - C:/Builds/jme-sdk/javacall-javame-sdk-305/implementation/share/jsr135_mmapi/ju_mmconfig.c line 801: caps: optional settings missing: SuspendBehavior
Pracuje w NetBeansie (na Win7), obrazek png znajduje się w katalogu "res", próbowałem zmieniać ściężkę dostępu na "/res/mtbadge-small.gif" i nic nie pomagało. Dodam, że na Eclipse miałem podobny problem z wyświetlaniem obrazków (tam jednak pomogło posługiwanie sie bufferedimage, w Java ME niestety to niemożliwe).