Java JFrame和图形的怪异效果

Java JFrame和图形的怪异效果,java,swing,Java,Swing,我用这个代码打开JFrame并说“欢迎使用蠕虫攻击”。当它打开窗口时,我看到了,我可以看到我的桌面。这是因为绘制过程被中断 尝试在paint方法的开头添加super.paint调用: import javax.swing.JFrame; import java.awt.Color; import java.awt.Graphics; public class Game extends JFrame { public Game() { setTitle("Worm Attack

我用这个代码打开JFrame并说“欢迎使用蠕虫攻击”。当它打开窗口时,我看到了,我可以看到我的桌面。

这是因为绘制过程被中断

尝试在
paint
方法的开头添加
super.paint
调用:

import javax.swing.JFrame;
import java.awt.Color;
import java.awt.Graphics;

public class Game extends JFrame {

    public Game() {
    setTitle("Worm Attack");
    setVisible(true);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setSize(300, 300);

    }

    public void paint(Graphics g) {
        g.drawString("Welcome to Worm Attck", 75, 75);
    }
}

你把括号弄乱了,但这可能就是你在这里粘贴的内容(不确定,所以不会编辑问题)

关于实际问题,不应该覆盖paint方法,而应该覆盖paintComponents()方法:)


阅读以下关于如何使用java进行绘制的文章::)

另外,在
JFrame
完成后,应该使用setVisible

public void paint(Graphics g) {
    super.paint(g);
    g.drawString("Welcome to Worm Attck", 75, 75);
}

“Swing程序应该重写
paintComponent()
,而不是重写
paint()
”。
setTitle("Worm Attack");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(300, 300);
setVisible(true);