[英]How can I specify the icon's path if icon doesn't have a specified address?
我有一個框架,想為它設置一個圖標。 我使用此代碼: JFrame f = new JFrame(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setLayout(null); f.setTitle("add icon example"); f.setBounds(200,200,200,200); Image icon = Toolkit.getDefaultToolkit().getImage("D:\\icon.png"); f.setIconImage(icon); f.setVisible(true);
JFrame f = new JFrame(); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setLayout(null); f.setTitle("add icon example"); f.setBounds(200,200,200,200); Image icon = Toolkit.getDefaultToolkit().getImage("D:\\icon.png"); f.setIconImage(icon); f.setVisible(true);
在這段代碼中,圖片的地址是特定的,但是如果圖片和 jar 文件在 zip 文件中,圖標將在 jar 文件中,我該怎么辦。 我想我可以寫一個代碼來解壓縮文件,然后將圖像保存在指定的地址,然后使用它。 但是,請任何人幫助我做到這一點。 謝謝。
答案是這樣的
BufferedImage im = ImageIO.read(myClass.getResourceAsString("iconName"));
如果您嘗試加載 JAR 中的圖像,這是解決此問題的最簡單方法。 如果您的 jar 從 zip 存檔中執行,這也將起作用。
BufferedImage image = ImageIO.read(MyClass.class.getClassLoader().getResourceAsStream("image_name.png"));
其中MyClass
是您從中調用此代碼的 class 的名稱。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.