drawImage () не рисует - PullRequest
       43

drawImage () не рисует

2 голосов
/ 25 февраля 2012
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 иногда не рисует?

1 Ответ

4 голосов
/ 25 февраля 2012

Изменение

g.drawImage(img,0,0,null);

до

g.drawImage(img,0,0,this);

и тебе надо идти.

...