我有JPanel
,其中我有JLabel
,其中包含Image
,如下所示:
JLabel imageLabel = new JLabel(new ImageIcon(image));
之后,我设置bounds
的{{1}},如下所示:
imageLabel
然后我将//I want the Image to be in the middle of the screen!
imageLabel.setBounds((int) (screenSize.getWidth() / 2 - image.getWidth(null) / 2),
(int) (screenSize.getHeight() / 2 - image.getHeight(null) / 2),
image.getWidth(null), image.getHeight(null));
添加到imageLabel
。
JPanel
现在我要使用add(imageLabel);
(Image
作品)来更改KeyEvent
。我认为,它更改了KeyEvent
(使用Image
),但它在屏幕上没有变化。
我怎么能做到这一点?我已尝试将image = any other Image
和revalidate()
添加到JPanel。
答案 0 :(得分:0)
我认为,它会改变图像(通过使用image =任何其他图像),
这没有任何作用。您所做的就是更新变量以指向不同的图像。您实际上并未将图像添加到标签中。
您需要重置标签的图标:
label.setIcon( new ImageIcon(...) );