[英]Weird effect with JFrame and Graphics
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
並說“ Welcome to Worm JFrame
”的代碼。 當它打開窗口時,我可以看透,也可以看到我的桌面。
這是因為噴塗過程被中斷了。
嘗試在paint
方法的開頭添加super.paint
調用:
public void paint(Graphics g) {
super.paint(g);
g.drawString("Welcome to Worm Attck", 75, 75);
}
您已經以某種方式弄亂了括號,但這可能只是您在此處所做的粘貼(不確定是否會編輯問題)。
關於實際問題,您不應覆蓋paint方法,而應覆蓋paintComponents()方法:)。
閱讀有關如何在Java中繪畫的內容: http : //java.sun.com/docs/books/tutorial/uiswing/painting/index.html :)
另一件事,您應該在JFrame
完成后使用setVisible。
setTitle("Worm Attack");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(300, 300);
setVisible(true);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.