绘制组件方法不适用于JFrame[英] Paint Component Method not working for JFrame

问题描述

在尝试使用 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 或组件.

推荐答案

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

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

本文地址:https://www.itbaoku.cn/post/978352.html