Black Friday = Pricewatch Bekijk onze selectie van de beste Black Friday-deals en voorkom een miskoop.
Toon posts:

[JAVA] drawImage werkt niet

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo allemaal,

Ik ben bezig met een mobiele applicatie project waarbij ik netbeans 6.1 gebruik, alleen om de een of andere reden krijg ik het niet voor mekaar simpelweg een afbeelding te voorschijn te toveren!

Hieronder de code waarmee ik een exception krijg:

Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import java.io.IOException;

import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.midlet.MIDlet;

public class DrawImageGraphicsMIDlet extends MIDlet {
  private Display display;

  protected void startApp() {
    Canvas canvas = new LineCanvas();
    display = Display.getDisplay(this);
    display.setCurrent(canvas);
  }

  protected void pauseApp() {
  }

  protected void destroyApp(boolean unconditional) {
  }
}

class LineCanvas extends Canvas {
  public void paint(Graphics g) {
    int width = getWidth();
    int height = getHeight();
    try {
      Image image = Image.createImage("/start.png");
      g.drawImage(image, 0, 0, Graphics.TOP | Graphics.LEFT);
    } catch (IOException ex) {
      g.setColor(0xffffff);
      g.drawString("Failed to load image!", 0, 0, Graphics.TOP | Graphics.LEFT);
      return;
    }
  }
}


Heeft iemand een idee wat het probleem kan zijn? Ik heb ook al geprobeerd een JPG afbeelding die in een andere midlet wel werkt te gebruiken, maar dat lukt ook niet!

  • Lukse
  • Registratie: Januari 2004
  • Laatst online: 12-04-2023
Wat is de exacte foutmelding die in de IOException zit?
Kan ie de afbeelding wel vinden?

  • Webgnome
  • Registratie: Maart 2001
  • Laatst online: 22:51
Verwijderd schreef op donderdag 14 augustus 2008 @ 10:31:
Hallo allemaal,

Ik ben bezig met een mobiele applicatie project waarbij ik netbeans 6.1 gebruik, alleen om de een of andere reden krijg ik het niet voor mekaar simpelweg een afbeelding te voorschijn te toveren!

Hieronder de code waarmee ik een exception krijg:

Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import java.io.IOException;

import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.midlet.MIDlet;

public class DrawImageGraphicsMIDlet extends MIDlet {
  private Display display;

  protected void startApp() {
    Canvas canvas = new LineCanvas();
    display = Display.getDisplay(this);
    display.setCurrent(canvas);
  }

  protected void pauseApp() {
  }

  protected void destroyApp(boolean unconditional) {
  }
}

class LineCanvas extends Canvas {
  public void paint(Graphics g) {
    int width = getWidth();
    int height = getHeight();
    try {
      Image image = Image.createImage("/start.png");
      g.drawImage(image, 0, 0, Graphics.TOP | Graphics.LEFT);
    } catch (IOException ex) {
      g.setColor(0xffffff);
      g.drawString("Failed to load image!", 0, 0, Graphics.TOP | Graphics.LEFT);
      return;
    }
  }
}


Heeft iemand een idee wat het probleem kan zijn? Ik heb ook al geprobeerd een JPG afbeelding die in een andere midlet wel werkt te gebruiken, maar dat lukt ook niet!
Help even, mijn glazen bol is kapot. Wat is was de exception ook alweer?

waarom staat er een return; in je catch block? Als het een ioexception is is het omdat hij die file gewoon niet kan lezen en dan is het eventjes spelen met \ of / op de diverse plaatsen (heb ik zelf altijd gezeur mee). Verder zie ik zo niet iets wat fout kan gaan.

Strava | AP | IP | AW


  • Salandur
  • Registratie: Mei 2003
  • Laatst online: 13:41

Salandur

Software Engineer

ik gok dat hij /start.png niet kan vinden: hij verwacht deze in de root van je harde schijf (bijvoorbleed d:/start.png als je class op D: staat.)

Assumptions are the mother of all fuck ups | iRacing Profiel


Verwijderd

Topicstarter
Thnx voor de reacties, maar ik krijg alleen de volgende melding:

code:
1
2
3
4
Attaching to localhost:1362
Not able to submit breakpoint FieldBreakpoint main.gui, reason: The target VM does not support field access breakpoints.
User program running
LineBreakpoint DrawImageGraphicsMIDlet.java : 38 successfully submitted.


verder heb ik gewoon `start.png` gebruikt ook zonder slash...

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Euh, het is hier niet de bedoeling dat we "dump je code en zoek de fout"-spelletjes gaan zitten spelen; je zult toch echt specifiek(er) moeten zijn in wat het probleem is en laten zien wat je zelf al geprobeerd hebt om het op te lossen. (Exacte) Foutmeldingen, debug gegevens, andere dingen die je hebt geprobeerd posten hoort daar dus bij.
Verwijderd schreef op donderdag 14 augustus 2008 @ 10:45:
code:
1
2
3
4
Attaching to localhost:1362
Not able to submit breakpoint FieldBreakpoint main.gui, reason: The target VM does not support field access breakpoints.
User program running
LineBreakpoint DrawImageGraphicsMIDlet.java : 38 successfully submitted.
Euh, ik ben geen java-guru, maar dit lijkt me een probleem met je IDE/debugger :? Dan werkt DrawImage inderdaad waarschijnlijk niet, maar zet je ons met je topictitel nogal op het verkeerde been als de rest ook niet werkt... :X

[ Voor 48% gewijzigd door RobIII op 14-08-2008 10:49 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • scorpie
  • Registratie: Augustus 2001
  • Laatst online: 16:45

scorpie

Supra Addict

Je kunt die exception toch gewoon laten printen? Doe eens een System.err.println(ex); erbij ofzo.

wil een Toyota Supra mkIV!!!!! | wil een Yamaha YZF-R{1,6} | wil stiekem ook een Ducati
"Security is just a state of mind"
PSN: scorpie | Diablo 3: scorpie#2470


  • Webgnome
  • Registratie: Maart 2001
  • Laatst online: 22:51
Als je toevallig met eclipseme werkt dan kan i kje nu al vertellen dat het gebruik van de debugger niet lekker werkt. Ik gebruik meestal syso en op plekken waar ik een exception verwacht gooi ik zo nu en dan een new alert("oeps") er tussendoor.

Strava | AP | IP | AW


Verwijderd

Topicstarter
Ok, thnx allemaal.

Bij dezen de error scorpie, wordt ik weinig wijzer van... :/

code:
1
2
3
4
5
6
Copying 1 file to C:\Documents and Settings\Mijn documenten\NetBeansProjects\Image\dist\nbrun30550
Copying 1 file to C:\Documents and Settings\Mijn documenten\NetBeansProjects\Image\dist\nbrun30550
Jad URL for OTA execution: http://localhost:8082/servlet/org.netbeans.modules.mobility.project.jam.JAMServlet/C%3A/Documents+and+Settings/Mijn+documenten/NetBeansProjects/Image/dist//Image.jad
Starting emulator in execution mode
Emulator command: C:\Nokia\Devices\Nokia_6131_NFC_SDK_1_1\bin\midp.exe -Xdescriptor "C:\Documents and Settings\Mijn documenten\NetBeansProjects\Image\dist\nbrun30550\Image.jad"
java.io.IOException


Snap alleen niet waarom er nbrun30550 in het path staat, want de jad en jar file staan gewoon in de Image\dist\ dir.

[ Voor 6% gewijzigd door Verwijderd op 14-08-2008 11:20 ]


  • Brian
  • Registratie: Oktober 2006
  • Laatst online: 26-10 11:56
Doe eens dit:

Java:
1
2
System.err.println(ex + " : " + ex.getMessage());
System.err.println(ex.printStackTrace());


Misschien krijgen we dan wel iets nuttigs.

[ Voor 4% gewijzigd door Brian op 14-08-2008 11:42 ]


Verwijderd

Topicstarter
System.err.println(ex.printStackTrace()); doet het niet (void type not allowed)

Maar getmessage geeft "null":

code:
1
2
Emulator command: C:\Nokia\Devices\Nokia_6131_NFC_SDK_1_1\bin\midp.exe -Xdescriptor "C:\Documents and Settings\Mijn documenten\NetBeansProjects\Image\dist\nbrun30571\Image.jad"
java.io.IOException : null

  • Brian
  • Registratie: Oktober 2006
  • Laatst online: 26-10 11:56
Sorry, het is nog een beetje vroeg;

Java:
1
2
System.err.println(ex + " : " + ex.getMessage()); 
ex.printStackTrace();


Raar trouwens, dat de getMessage niet werkt. Je hebt het toch wel in je catch blok gezet?
Edit: een IOException heeft volgens mij standaard 'null' als message 8)7

[ Voor 14% gewijzigd door Brian op 14-08-2008 11:59 ]


Verwijderd

Topicstarter
Brian schreef op donderdag 14 augustus 2008 @ 11:55:
Sorry, het is nog een beetje vroeg;

Java:
1
2
System.err.println(ex + " : " + ex.getMessage()); 
ex.printStackTrace();


Raar trouwens, dat de getMessage niet werkt. Je hebt het toch wel in je catch blok gezet?
Edit: een IOException heeft volgens mij standaard 'null' als message 8)7
Yup staat in catch blok...

met dit:

code:
1
2
3
4
    } catch (IOException ex) {
      System.err.println(ex + " : " + ex.getMessage() + " hash: " + ex.hashCode());
      ex.printStackTrace();
    }


krijg ik:

code:
1
2
java.io.IOException : null hash: 481523300
java.io.IOException

Verwijderd

Topicstarter
Mijn god ik schaam me dood... :o

Salandur had de goede oplossing al... Gewoon een kwestie van een onjuist pad dus... :/

Java:
1
      Imagetest = Image.createImage("/Image/start.png");


werkt...

8)7

  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

-hap-

[ Voor 98% gewijzigd door Snake op 14-08-2008 12:34 ]

Going for adventure, lots of sun and a convertible! | GMT-8

Pagina: 1