• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 633
  • Last Modified:

How can I display image in eclipse

hi,
I am trying to display image in java, but the image isn't display at all.

My questions are:
What is the problem?Where I should put the image file and  how can I deploy the source file with the image file?

thanks.
Image image = Image.createImage("/MyImage.png");

Open in new window

0
GLUZMANS
Asked:
GLUZMANS
  • 7
  • 5
  • 4
1 Solution
 
CEHJCommented:
Depends on how you want to do it. Normally best as


BufferedImage bi = javax.imageio.ImageIO.read(getClass().getResource("/MyImage.png"));
0
 
objectsCommented:
to display an image from a file see here

http://www.objects.com.au/java/qa/926375938.html

Using that method the image can be where you want it

Easit way to display an image is using a JLabel, see here for an example

http://java.sun.com/docs/books/tutorial/uiswing/components/icon.html

When loading it as a resource as in this example the image needs to be located in your classpath

0
 
GLUZMANSAuthor Commented:
My apologized. The question should be in j2me zone.

I inserted  the image file into res directory under my project.
And I still getting an exception: java.io.IOException.

 

0
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
CEHJCommented:
Please post your code. Something like

getResource("/res/MyImage.png")

should be used

0
 
GLUZMANSAuthor Commented:
The code is very simply. I only want to draw an image into the canvas displayable.

thanks.

image = Image.createImage("/MyImage.png");
.
.
.
protected void paint(Graphics g){
   g.drawImage(image, 20, 20 , 0);
}

Open in new window

0
 
CEHJCommented:
OK, so make that
image = javax.imageio.ImageIO.read(getClass().getResource("/MyImage.png"));
 
...
public void paint(Graphics g){ // possibly paintComponent if JPanel
   g.drawImage(image, 20, 20 , 0);
}

Open in new window

0
 
CEHJCommented:
OK, so make that
image = javax.imageio.ImageIO.read(getClass().getResource("/res/MyImage.png"));
 
...
public void paint(Graphics g){ // possibly paintComponent if JPanel
   g.drawImage(image, 20, 20 , 0);
}

Open in new window

0
 
GLUZMANSAuthor Commented:
thanks, but as I wrote before my question is about J2ME programming. javax is not included in the J2ME platform.
0
 
GLUZMANSAuthor Commented:
I mean javax.imageio.ImageIO ofcourse (-:
0
 
objectsCommented:
try putting the image file i  the root directory of your jar

and make sure you load it after the midlet has completed initialising (after init() has been called)

0
 
GLUZMANSAuthor Commented:
It is not working.

*  I tried to put the image.png file into the root,src and  deploy folders.
0
 
objectsCommented:
are any of those source folders?

0
 
objectsCommented:
What does Class.getResourceAsStream("/MyImage.png") return?

0
 
GLUZMANSAuthor Commented:
The return result of :  getClass().getResourceAsStream("/MyImage.png"   is:
com.sun.midp.io.ResourceInputStream@1cb37664
0
 
objectsCommented:
may be having problems reading that image, try a different image

0
 
GLUZMANSAuthor Commented:
Its working! I changed the image and it is working.

It is important to  emphasize for others , that the code for creates an immutable image was still : image = Image.createImage ("/MyImage.png")   .  I put the images only in the "res" folder,
and in the "Properties for res => Native Library => Location path" , I inserted  the "res" location path, that is "MyProject/res".

thanks a lot objects.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

  • 7
  • 5
  • 4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now