我觉得我经历了我需要做的一切:
我无法找到任何问题,所以我有点困惑 我的代码在这里:
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);
}
}
和
nvm use 8.5.0
答案 0 :(得分:0)
frame.add(new Graphicsa());
frame.add(game);
只能将一个组件添加到JFrame的BorderLayout的CENTER
。所以你的游戏组件取代了图形组件。
阅读Swing tutorial了解Swing基础知识。有以下部分:
与此问题直接相关。
另外,为什么你甚至试图做图形绘画?如果我看起来像你只是想把背景画成某种颜色。只需在游戏组件上使用setBackground(...)
方法。