使用JFrame和Graphics的奇怪效果

时间:2013-11-09 21:29:05

标签: java swing

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);
    }
}

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

3 个答案:

答案 0 :(得分:0)

这是因为油漆过程中断了。

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

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

答案 1 :(得分:0)

你以某种方式弄乱了括号,但这可能就是你在这里做的粘贴(不确定也不会编辑问题)。

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

阅读本文,了解如何在java中进行绘画:http://java.sun.com/docs/books/tutorial/uiswing/painting/index.html:)

答案 2 :(得分:0)

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

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