1

このスレッドに基づいて: Java: ファイルから画像を読み込み、編集して JPanel に追加する 画像を JPanel に読み込もうとしましたが、それは描画されませんでした。次のような JComponent から拡張されます。

package in.co.sneh;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import javax.swing.JComponent;
private BufferedImage img;
    public class JImageComponent  extends JComponent
{
    public JImageComponent (BufferedImage bi)
{
    img = bi;
}

@Override
public void paintComponent(Graphics g)
{
    g.drawImage(img, 0, 0, this);
}
}

次に、アプレット フォーム クラスで、loadPicture ボタンをクリックすると、実行されるアクションは次のようになります。

JFileChooser chooser = new JFileChooser();
    chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
   int retVal = chooser.showDialog(AppletForm.this, "Attach");
    if (retVal == JFileChooser.APPROVE_OPTION) {
        picFile = chooser.getSelectedFile();
        try {

            image = ImageIO.read(picFile);
            JImageComponent jcomp = new JImageComponent(image);
            Graphics2D g = image.createGraphics();
            jcomp.paintComponents(g);
            // Draw here on the graphics
            //g.dispose();
            g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, 
            RenderingHints.VALUE_ANTIALIAS_ON);
            jPanel6.add(jcomp);
            System.out.println("Testing" + picFile);



        } catch (IOException e) {

            e.printStackTrace();
        }

私にはすべてが整っていますが、ファイルエクスプローラーで画像を選択しても画像が表示されません。誰か助けてもらえますか? 前もって感謝します, ロムロ・ロメロ

4

2 に答える 2