[英]Java in netbeans, read image file from java package
我想知道有人能幫忙嗎? 我一直在開發一個Java應用程序,該應用程序在jframe上顯示磁盤上的圖像。 使用netbeans,我在項目中創建了一個名為images的java程序包,並將圖像存儲在該程序包中。 首先是如果我希望他們隨應用程序一起提供時該怎么做?
我具有以下功能來讀取圖像:
Image readImg(String file)
{
Image image = null;
try {
File imgFile = new File(file);
image = ImageIO.read(imgFile);
} catch (IOException e) {
// System.out.println("Can not Display Image");
e.printStackTrace();
}
if (image != null){
return image;
} else{
return null;
}
}
我的問題來了,我無法計算出要傳遞給函數的相對文件路徑。 我已經顯示出要調用的圖像,如下所示:
Image headerImg = readImg("C:\\Users\\D@nb0y\\Documents\\NetBeansProjects\\GiftAidApp\\src\\images\\galogo.png");
顯然,如果該應用程序在任何其他設備上運行,這將完全消失。 任何人都可以提請我注意使此代碼可移植嗎?
非常感謝
由於您正在嘗試將圖像添加到JFrame
中,因此最好使用ImageIcon
代替Image
。
嘗試這個:
ImageIcon image = new ImageIcon("images/galogo.png");
JLabel imageLabel = new JLabel(image);
frame.add(imageLabel);
如果您在項目中包含images
文件夾,這也應該使該應用程序具有可移植性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.