[英]Graphics not drawing to JFrame
我感覺自己經歷了所有需要做的事情:
我找不到任何錯,所以我有點困惑。
我的代碼在這里:
public static void main(String[] args) {
DragonEscape game = new DragonEscape();
frame.setTitle(title);
frame.setSize(1000, 500);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.add(new Graphicsa());
frame.add(game);
}
和
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import javax.swing.JComponent;
public class Graphicsa extends JComponent {
private static final long serialVersionUID = 1L;
public Graphics g;
protected void paintComponent(Graphics g) {
Graphics2D g2d = (Graphics2D) g;
g.fillRect(0, 0, 1000, 500);
g.setColor(Color.gray);
g.fillRect(0, 0, 100, 100);
}
}
frame.add(new Graphicsa());
frame.add(game);
只能將一個組件添加到JFrame BorderLayout的CENTER
。 因此,您的游戲組件將替換圖形組件。
閱讀有關Swing基礎知識的Swing教程 。 有以下部分:
與這個問題直接相關。
另外,為什么還要嘗試繪畫圖形呢? 如果在我看來,您只是想將背景塗成某種顏色。 只需在游戲組件上使用setBackground(...)
方法即可。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.