ich will ein Fenster mit sogenannnten "Kästchen" programmieren aber das Fenster ist nur weiß
Ich denke der fehler ist irgendwo beim PatentComponent. Ich bin ein ziemlicher Einsteiger bei der GUI und benötige ein bißchen Hilfe
So sieht bei mir die Klasse aus bei der dann das Muster gezeichnet wird ich "adde" diese mit der Gui Klasse(das bei mir leere Fenster)
Sieht so aus
Und führe dies dann in der Main Klasse aus
Ganz allgemein hab ich noch nicht ganz verstanden wie dieses patentComponent geht
Ich denke der fehler ist irgendwo beim PatentComponent. Ich bin ein ziemlicher Einsteiger bei der GUI und benötige ein bißchen Hilfe
Code:
public class Draw extends JLabel{
protected void patentComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D) g;
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF);
//Draw Background
g.setColor(Color.LIGHT_GRAY);
g.fillRect(0, 0, 800, 600);
//Draw Grid
g.setColor(Color.GRAY);
for (int i = 0; i < 16; i++) {
for (int j = 0; j < 16; j++) {
g.drawRect(i*32+Gui.xoff, j*32+Gui.xoff, 32, 32);
}
}
//Draw Border
g.setColor(Color.BLACK);
g.drawRect(Gui.xoff, Gui.yoff, 512, 512);
repaint();
}
}
So sieht bei mir die Klasse aus bei der dann das Muster gezeichnet wird ich "adde" diese mit der Gui Klasse(das bei mir leere Fenster)
Sieht so aus
Code:
public class Gui {
JFrame jf;
public static int width = 800, height = 600;
public static int xoff = 130, yoff = 20;
public void create() {
jf = new JFrame("Snake");
jf.setSize(width,height);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setLocationRelativeTo(null);
jf.setLayout(null);
jf.setResizable(true);
Draw a = new Draw();
a.setBounds(0, 0, 800, 600);
a.setVisible(true);
jf.add(a);
jf.requestFocus();
jf.setVisible(true);
}
}
Und führe dies dann in der Main Klasse aus
Code:
public class Main {
public static void main(String[]args) {
Gui gui = new Gui();
gui.create();
}
}
Ganz allgemein hab ich noch nicht ganz verstanden wie dieses patentComponent geht