1

我有一个扩展 JButton 的类,我想更改从该类的新实例创建的按钮将显示的背景图像。我不能说我对编程有很多了解,因为我是自学成才的,而且我已经工作太久了,所以我只知道基础知识。我相信我必须创建图像的图标然后应用它或从文件创建一个 buffredImage 并应用它,尽管我不太确定如何这样做。我查看了其他各种类似的问题,但我看到许多我不熟悉的类和方法,当我尝试实现它们时,我的 IDE 找不到它们(很可能是因为我不确定要导入哪些文件才能将它们放入我的程序中)。任何帮助,将不胜感激。

4

1 回答 1

1

如果您需要显示图像,请使用ImageIcon插入到JLabel.

您还需要以某种方式从磁盘读取图像。让您JButton对 JLabel 采取行动。

这个问题将帮助您实际检索图像:如何更改 JLabel 的图标?. 但是,它基本上类似于

java.net.URL imgURL = getClass().getResource("/path/to/icon");
ImageIcon icon;
if (imgURL != null) {
    icon = new ImageIcon(imgURL, description);
} else {
    System.err.println("Couldn't find icon path");
}

看看:如何使用图标(Java 教程)

然后可以通过以下任一方式将其放入您的 JLabel 中:

JLabel label = new JLabel(icon)

或(当它已经初始化时)

label.setImageIcon(icon);

调整 ImageIcon 的大小

ImageIcon icon = new ImageIcon(new ImageIcon(imgURL).getImage().getScaledInstance(width, height, Image.SCALE_SMOOTH))
于 2013-03-28T00:00:20.900 回答