为什么不叫油漆?

问题描述 投票:1回答:1

我用三种方法创建了一个类。我最初以略有不同的编码开始,并且在查看了几个视频和问题后进行了更改,直到最终完成。由于某种原因,我试图制作的正方形将不会出现在屏幕上。请提出您的任何建议。我是最近才开始的,我相信这是显而易见的。请原谅我犯的任何常规错误。作为附带说明,我发现问题在于未调用“ paint”方法。我是新手,在尝试了几种不同的方式后,我不知道如何调用它。如果您对我的代码有任何疑问,请询问。谢谢!

public class TheGame extends JPanel {

public void screen() {
    JFrame f = new JFrame();
    f.setTitle("Grid Game");
    f.setResizable(false);
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    f.setBounds(250, 250, 500, 500);
    f.add(this);
    f.setVisible(true);
}

public void paint(Graphics2D g) {
    g.setColor(Color.BLACK);
    g.fillRect(50, 50, 200, 200);

}

public static void main(String[] args) {
    TheGame game = new TheGame();
    game.screen();
}
java paint
1个回答
0
投票

您需要override paintComponent()方法:

    @Override
    protected void paintComponent(Graphics g) {
        super.paintComponent(g);
        g.setColor(Color.BLACK);
        g.fillRect(50, 50, 200, 200);
    }
© www.soinside.com 2019 - 2024. All rights reserved.