简体   繁体   中英

Display image in Java JFrame

What's the best way to display an image at specific coordinates in a java JFrame?

I know there are a number of ways to do this, I just need to know the best way to display an image that I am planning on moving around the frame!

Using an ImageIcon with a JLabel is the easiest way. You can actually add this to a level in JFrame's JLayeredPane that is above or below the contentPane depending on your requirements

Develop a custom component and override paintComponent() method to do this. Developing a custom component gives you flexibility for further enhancements. You can add panning, zooming, etc type of capabilities easily this way.

Then just add this component to your JFrame .

I would suggest adding it as an ImageIcon:

ImageIcon image = new ImageIcon("image.jpeg");
add(image);

EDIT (How to add it add specific coordinates):

First a note, usually (99% of the cases) it is NOT encouraged to position JComponents yourself. Use a LayoutManager to position them for you, and handle the resizing.
I will tell you how to position it yourself though:

  • Set your LayoutManager to null : setLayout(null) .
  • set your ImageIcon to specific coordinates: image.setLocation(x, y) .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM