Only 48 hours left in the trailboss' kickstarter!

New rewards and stretch goals. CLICK HERE!



  • Post Reply Bookmark Topic Watch Topic
  • New Topic

Image does not appear?  RSS feed

 
Adam Miszczak
Greenhorn
Posts: 24
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

I was trying to load an image and print it out on the screen, but for some reason it does not seem to appear. The path is correct (the file is in a res folder), but even with an image that is elsewhere on my computer with the correct file path it still does not work.

Game.java



Screen.java



Background.java



Thanks!

Also, another question I have, is how would I define the drawImage function in the background class, so that in the screen.paintComponent method I just have to call background.paint(g) and it prints it out on the screen?
Something like this:



and then I just have to call player.paint(g) in screen.paintComponent method

but instead with an image like so:



but that does not work because "The method drawImage(Image, int, int, ImageObserver) in the type Graphics is not applicable for the arguments (Image, int, int, Background)"
 
Rob Camick
Ranch Hand
Posts: 2752
11
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
There is no need to create a custom component to display an image. Just add the ImageIcon to a JLabel and add the label to the frame.

You have several problems with your painting code:

1) Don't override or invoke the update() method. This is only done in AWT and not in Swing.
2) Your "PaintComponent" method name is wrong. Methods don't start with an upper case character. Use @Override before the method name and the compiler will catch the error. Ie try the following to see what the compiler error is, then fix the error:



3) You are using the drawImage() method invorrectly. The second/third parameters should be the location of the image, not the size.
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!