【问题标题】:Change the icon of the button but does not want to set the location of the image更改按钮的图标但不想设置图像的位置
【发布时间】:2018-07-23 12:20:18
【问题描述】:

我想更改按钮的图像(我知道怎么做)。有没有其他方法可以在不提供图像位置的情况下添加图像,因为如果应用程序的位置发生变化,它将不会显示图像。所以我想知道是否有其他方法可能?

编辑:

jButton1.setIcon(new ImageIcon("Address of the image"));

我不想添加这个地址,因为它可能会改变位置。

if (status.equals("update"))
jButton1.setIcon(new ImageIcon("C:/Users/laptop/Documents/NetbeansProjects/Physics/src/update.png")); 

如果状态为更新,这是从 add.png 更改图像 update.png 的代码。我不想写它的地址,因为如果 jar 文件的位置发生更改,它将不会显示图像。该项目将离线运行,因此无需在线建议

【问题讨论】:

  • 将图像放入应用程序 jar 文件本身,并使用类加载器加载它。 docs.oracle.com/javase/8/docs/api/java/lang/…, docs.oracle.com/javase/8/docs/api/javax/swing/…
  • 我已将图像添加到项目本身,但它也无法正常工作。然后我将项目转换成jar文件
  • 如果您不发布代码,我们无法告诉您为什么您的代码不起作用。
  • 这正是为什么我建议您将图标放在应用程序本身的 jar 文件中,并使用我链接到的两种方法使用类加载器加载图标的原因。但你不读书,所以我在沙漠里布道。
  • 我为您提供了一个教程链接,其中包含展示如何使用这两种方法的工作示例。如果您不花时间阅读所提供的建议,为什么还要提出问题?

标签: java image swing embedded-resource imageicon


【解决方案1】:

只需在项目目录中添加图像文件,并仅提供文件的名称和格式
即在您的示例中:
if (status.equals("update")) jButton1.setIcon(new ImageIcon("update.png"));

【讨论】:

    猜你喜欢
    • 2013-10-27
    • 1970-01-01
    • 2020-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-03
    • 2013-02-28
    相关资源
    最近更新 更多