0
これを実行すると、ウィンドウが表示され、描画されません。 プログラムを起動すると、終了コードがヌルであるがウィンドウが空になったときに実行されます。Jframeが正しく動作しない
public class Component extends JComponent implements IComponent {
public void init(Graphics g) {
int cellWidth = 7;
int cellHeight = 7;
// Background:
super.paintComponent(g);
g.setColor(Color.white);
for (int i = 0; i <= 5; i++) {
for (int j = 0; j <= 5; j++) {
g.setColor(Color.black);
g.fillRect(i * cellWidth, j * cellHeight, cellWidth, cellHeight);
g.setColor(Color.decode("#00ffff"));
g.fillRect(i * cellWidth, j * cellHeight, cellWidth - borderThickness, cellHeight - borderThickness);
}
}
g.setColor(Color.BLACK);
}
public void draw() {
JFrame f = new JFrame("Test");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Component c = new Component(gameStatus);
f.add(c);
f.setSize(screenWidth, screenHeight);
f.setVisible(true);
}}
public class app {
public static void main(String[] args) {
Component component = new Component(gameStatus);
component.draw();
}}
[mcve]を投稿してください。あなたの現在投稿されているコードがたくさんありません。 how/where/whenは 'init(Graphics)'と呼ばれますか?代わりに 'paintComponent()'をオーバーライドしたくないのですか? – Thomas
sry mate私のコードを今このように編集する – Boyesz
私は強く** [JFC/Swing](https://docs.oracle.com/javase/tutorial/uiswing/index.html)チュートリアルあなたがまだいなければ。私は欠けているいくつかの重要な初期化コードがあると考えているので、それがレンダリングされていません。このチュートリアルでは、Swingアプリケーションを読みやすく、コード化するのをはるかに簡単にする推奨された方法についていくつか提案しています。 –