1

私はラベルを持っています。画像をレンダリングしたいのですが。しかし、次のコードは何でもします。

 CardLayout cl = (CardLayout) (mainPanel.getLayout());
        cl.show(mainPanel, "newPersonaCard");
        BufferedImage myPicture = ImageIO.read(new    File("C:\\Desktop\\Documents\\Pictures\\always.jpg"));
        ImageIcon icon = new ImageIcon(myPicture);
        icon.getImage().flush();

私はnetbeanデザイナーを使用しています。

4

3 に答える 3

1
.
.
File file = fileChooser.getSelectedFile();

JLabel label = new JLabel();
ImageIcon icon = new ImageIcon(file.getAbsolutePath());
label.setIcon(icon);
//add label to panel
于 2012-04-25T15:14:17.907 に答える
1
fileChooser.showDialog(saveBtn2, null);
File file = fileChooser.getSelectedFile();
System.out.println("The path to file "+file.getAbsolutePath());          
ImageIcon icon = new ImageIcon(file.getAbsolutePath());
pictureLbl.setIcon(icon);
于 2012-04-25T15:16:58.143 に答える
1

あなたは正しいです、場合によっては、でIconの塗り直しに問題がありJLabelます、そしてあなたは電話しなければなりません、

myIcon.getImage().flush();
myLabel.setIcon(myIcon);

残りのメソッドは、IconJLabel正しく実装されています

于 2012-04-25T16:29:12.317 に答える