无法将ImageIcon添加到JLabel

时间:2017-03-15 08:42:52

标签: jlabel imageicon

我正在尝试使用以下代码将图像添加到jLabel:

ImageIcon logo = new ImageIcon("E://Logo.png");
JLabel imagelabel = new JLabel(logo);

尝试执行时,我收到以下错误:

Cannot cast javax.swing.JLabel to javax.swing.Icon

有人可以告诉我如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

最好不要使用直接文件路径,而是将图像放在包文件夹中。您必须首先创建JFrame和JPanel并将JPanel添加到JFrame,然后创建并添加标签,然后将ImageIcon添加到JLabel 使用.setIcon方法

JFrame myWindow = new JFrame("Company logo");
myWindow.setVisible(true);
myWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
myWindow.setSize(500, 500);
myWindow.setResizable(true);

JPanel myPanel = new JPanel();

//add panel to JFrame
myWindow.add(myPanel);

//create image icon constructor
ImageIcon logo = new ImageIcon("logo.png");
//create label constructor
JLabel logoLabel = new JLabel("logo");
//add label to panel
myPanel.add(imageLabel)
//add icon to label 
logoLabel.setIcon(logo);