java—将路径链接到随处可见的imageicon

agxfikkp  于 2021-07-06  发布在  Java
关注(0)|答案(1)|浏览(311)

我最近用jframe写了一个程序。我正在使用 static ImageIcon img = new ImageIcon("X:/workspace/eclipse/Timer5/rsc/icon.png"); 以及 f1.setIconImage(img.getImage()); 显示jframe的图标。我的问题是,如果程序作为可运行的jar导出,其他计算机上的路径将不再工作,图标将显示标准java图标。
因为我可以指定这样的路径
logo = ImageIO.read(getClass().getResource("/logo.png")); g.drawImage(logo, 657, 640, 485, 85, null); 在我的label类(扩展了jlabel)中,它可以在其他计算机或移动的文件上工作,我想问一下这是否也适用于图像图标。如果我像以前一样进入这条路 ImageIO.read() 则未加载任何图标。

kcugc4gi

kcugc4gi1#

我想问一下,这是否也适用于图像图标。
阅读 ImageIcon 应用程序编程接口。
你会发现一个构造函数 Image 作为参数。
所以是的,你可以也应该使用 getResource() 方法:

Image image = ImageIO.read(...);
ImageIcon icon = new ImageIcon( image );
JLabel label = new JLabel( icon );

相关问题