问题
I've created GUI for my application using Netbeans' GUI Builder. I am trying to display a JFrame containing a JLabel with an image, and I can't get the Image to display.
My generated code :
private void initComponents() {
//...
jLabel1 = new JLabel(new ImageIcon(myPicture));
}
And my class code:
public class GUIWindow extends javax.swing.JFrame {
BufferedImage myPicture;
/** Creates new form GUIWindow */
public GUIWindow() throws IOException {
myPicture = ImageIO.read(new File("images/logo.png"));
initComponents();
this.add(jLabel1);
}
}
but I still don't see an image ... (path to the image file is fine) its sth like:
my-project :
/build
/dist
/images/logo.png
/nbproject
/src (here I have all my source files)
/build.xml
/manifest.mf
回答1:
you can use like this
URL imgSmartURL = this.getClass().getResource("your image path");
jLabel1 = new JLabel(new ImageIcon(imgSmartURL), JLabel.CENTER);
回答2:
I would do something like this instead.
JLabel dice1 = new JLabel();
ImageIcon one = new ImageIcon("dice/1.png");
//set dice1 position
dice1.setLocation(20, 100);
dice1.setSize(115, 115);
dice1.setIcon(one);
gamepanel.add(dice1);
回答3:
If you are using netbeans you can directly add an image to a jLabel by setting properties. Right click on the jLabel -> properties -> icon -> (if it's external image) import to project(upload your image) -> ok .
It'l be added into your jLabel.
回答4:
- I'd suggest you copy the image in a seperate folder(images).
- Then use
Toolkit.getDefaultToolkit().getImage("images/A.png");
I believe there's a similar question
回答5:
private ImageIcon imageIconPrint =
new ImageIcon(getClass().getResource("/image/print.gif"));
create button and add follwing code:
jbtCanada.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
jlblFlag.setIcon(imageIconCanada);
}
});
this would help i think
来源:https://stackoverflow.com/questions/11724564/image-wont-appear-in-jlabel