Guten Abend,
Ich arbeite gerade an einem grafischen TicTacToe und habe Probleme mit dem Layout:
Hab ich das GridLayout einmal mit den Panels gefüllt, kann ich sie nicht mehr überschreiben / überzeichnen. Wenn ich mit meiner Klasse "Cross" ein Kreuz machen will, wird dessen paintComponent-Methode nicht aufgerufen.
hier ein bisschen Code, womit das Layout erstellt wird:
Ich arbeite gerade an einem grafischen TicTacToe und habe Probleme mit dem Layout:
Hab ich das GridLayout einmal mit den Panels gefüllt, kann ich sie nicht mehr überschreiben / überzeichnen. Wenn ich mit meiner Klasse "Cross" ein Kreuz machen will, wird dessen paintComponent-Methode nicht aufgerufen.
hier ein bisschen Code, womit das Layout erstellt wird:
Code:
public void setUp()
{
label = new JLabel("Klick on the grid");
this.setLayout(new BorderLayout());
// set up GamePanel
gamePanel = new JPanel();
gamePanel.setLayout(new GridLayout(3,3));
gamePanel.setBorder(new EtchedBorder());
// set up GridPanel
setGridPanel();
c = new Cross(100,100);
p1 = c.getPanel();
this.add(gamePanel, BorderLayout.CENTER);
this.add(label, BorderLayout.SOUTH);
frame = new JFrame("Tic Tac Toe");
frame.add(this);
frame.setSize(300,300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
public void setGridPanel()
{
p1 = new JPanel();
p1.setPreferredSize(new Dimension(100,100));
p1.setBorder(new EtchedBorder());
gamePanel.add(p1);
p2 = new JPanel();
p2.setPreferredSize(new Dimension(100,100));
p2.setBorder(new EtchedBorder());
gamePanel.add(p2);
p3 = new JPanel();
p3.setPreferredSize(new Dimension(100,100));
p3.setBorder(new EtchedBorder());
gamePanel.add(p3);
p4 = new JPanel();
p4.setPreferredSize(new Dimension(100,100));
p4.setBorder(new EtchedBorder());
gamePanel.add(p4);
p5 = new JPanel();
p5.setPreferredSize(new Dimension(100,100));
p5.setBorder(new EtchedBorder());
gamePanel.add(p5);
p6 = new JPanel();
p6.setPreferredSize(new Dimension(100,100));
p6.setBorder(new EtchedBorder());
gamePanel.add(p6);
p7 = new JPanel();
p7.setPreferredSize(new Dimension(100,100));
p7.setBorder(new EtchedBorder());
gamePanel.add(p7);
p8 = new JPanel();
p8.setPreferredSize(new Dimension(100,100));
p8.setBorder(new EtchedBorder());
gamePanel.add(p8);
p9 = new JPanel();
p9.setPreferredSize(new Dimension(100,100));
p9.setBorder(new EtchedBorder());
gamePanel.add(p9);}