import java.awt.*;
import javax.swing.*;
public class Main
{
JFrame jf;
Main()
{
jf=new JFrame();
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.add(new MyCanvas());
jf.pack();
jf.setVisible(true);
}
public static void main(String[] args)
{
SwingUtilities.invokeLater(new Runnable()
{
@Override
public void run()
{
new Main();
}
});
}
}
class MyCanvas extends JComponent
{
Image img;
MyCanvas()
{
setPreferredSize(new Dimension(200,200));
img=Toolkit.getDefaultToolkit().createImage("1.jpg");
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
g.drawImage(img,0,0,null);
}
}
캔버스에 고유 한 paintComponent
메서드를 사용하고 싶습니다만 이미지가없는 빈 창이 표시되는 경우가 있습니다. 그리고이 이미지를 볼 때 창 크기를 조정해야합니다. 문제가 무엇입니까? drawImage가 때때로 그려지지 않는 이유는 무엇입니까?drawImage()가 그려지지 않습니다
다시 그리기를 실행하려면 창의 크기를 조정하십시오. 처음에는 창을 그릴 때 이미지가 아직로드되지 않았을 것입니다. – ZeissS
@ZeissS 즉 Toolkit.getDefaultToolkit(). createImage ("1.jpg");'이 메소드는 이미지를 완전히로드하지 않아도 반환됩니까? – eXXXXXXXXXXX2
네, 그렇습니다. – ZeissS