1

在尝试使用 JLabel 之后,我正在尝试在屏幕上绘制图像,现在正在尝试 paintComponent 方法。我在没有看到任何结果并且没有调用该方法后尝试插入断点,并且什么也没有出现。我应该怎么办?这是我的重要代码-

`

     public void createWindow(){        

            frame.setVisible(true);  
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setLocationRelativeTo(null);
    frame.pack();
    frame.setSize(xSize, ySize);
            frame.setLocation(0, 0);
            frame.addComponentListener(this);
            //frame.add(im);             

    }

public void paintComponent(Graphics g) { super.paintComponent(g); g.drawImage(placeholder, 0, 0, getWidth(), getHeight(), null); g.drawString("Hello", 100, 100); }

另外,如果这有所作为,我将使用 JFrame 而不是 JPanel 或组件。

4

1 回答 1

4

JFrame没有paintComponent方法。您应该避免直接在框架上绘画,而是使用 aJPanel并覆盖其paintComponent方法

您还应该使用 @Override 注释,如果父类没有您尝试覆盖的方法,它将引发编译器异常......

于 2013-09-21T20:56:19.567 回答