[英]Netbeans IDE 8.02 Java jFrame GUI bulder initComponents error
[英]JLabel not displaying image after choosing from jFileChooser in java netbeans IDE 8.02
我正在使用 NetBeans IDE 8.0.2 創建我的項目應用程序。 我已經使用CardLayout
中的多個面板創建了我的應用程序的注冊頁面。 為了讓用戶上傳他們的圖像,我創建了一個JLabel
並向其添加了mouseClicked
事件,該事件顯示JFileChooser
但所選圖像未顯示在 label 中(即使圖像路徑已存儲)。 請檢查以下代碼。
private void PrImgLabMouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
JFileChooser FileChooser = new JFileChooser();
int response = FileChooser.showOpenDialog(Panel1);
if(response == JFileChooser.APPROVE_OPTION){
File imgFile = FileChooser.getSelectedFile();
String Filepath = imgFile.getAbsolutePath();
ImgMeth.Resize(Filepath, PrImgLab);
}
else if(response == JFileChooser.CANCEL_OPTION);{
Icon defimg = new ImageIcon("DefImg.png"); //default image path
PrImgLab.setIcon(defimg);
}
}
這是 label 事件 class,下面的代碼是用於調整圖像大小並將其放入JLabel
的方法。
public void Resize(String path,JLabel label){
ImageIcon img = new ImageIcon(path);
Image image = img.getImage();
Image imgScale = image.getScaledInstance(label.getWidth(), label.getHeight(), Image.SCALE_SMOOTH);
Icon icon = new ImageIcon(imgScale);
label.setIcon(icon);
}
在調用resize
( Yes,應該以小寫開頭)之后,對包含 label 的Container
調用validate
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.