# GUI-Komponenten werden nicht angezeigt



## GabrielP (15. Sep 2007)

Hallo, 
ich arbeite im Moment an einem TicTacToe-Programm.
Das GUI ist folgendermaßen aufgebaut:
Das Frame ist in zwei Panels unterteilt, buttonPanel und untenPanel.
buttonPanel hat ein 3,3 GridLayout und enthält 9 Buttons (später spielt man, indem man nacheinander auf die Buttons klickt.
untenPanel enthält ein Menü, mit dem man auswählt, ob X oder O anfängt, und den Button "Neues Spiel".
Das Programm kompiliert ohne Probleme, aber leider erscheint beim Ausführen nur ein leeres Frame.
Code:

```
import java.awt.*;


//Hauptprogramm
public class TicTacToe extends Frame{

 private Panel buttonPanel = new Panel();
 private Panel untenPanel = new Panel();

 private Button[] tic = new Button[9];
 private Button newGame = new Button("Neues Spiel");

 private Choice spielerChoice = new Choice();

 public TicTacToe(){
   setTitle("TicTacToe");
   setBackground(Color.lightGray);
   setResizable(false);
   setVisible(true);
   setSize(300,300);
   //Ticbuttons hinzufügen
   for(int i = 0; i>9; i++){
     tic[i] = new Button(" ");
     buttonPanel.add(tic[i]);
   }

   untenPanel.add(spielerChoice);
   untenPanel.add(newGame);

   spielerChoice.add("X beginnt");
   spielerChoice.add("O beginnt");
   //Layouts
   setLayout(new BorderLayout() );
   buttonPanel.setLayout(new GridLayout(3,3) );
   untenPanel.setLayout(new GridLayout(2,1,30,20) );
    //Panels hinzufügen
   add(BorderLayout.SOUTH, untenPanel);
   add(BorderLayout.CENTER, buttonPanel);
   buttonPanel.setVisible(true);
   untenPanel.setVisible(true);
   
 }
 public static void main(String args[]){
    new TicTacToe();
  }
}
```
Weiß jemand, wie ich das Problem lösen kann?
Danke im vorraus


----------



## merlin2 (15. Sep 2007)

```
setVisible(true);
```
sollte immer die _letzte_ Anweisung im Konstruktor sein.


----------



## GabrielP (15. Sep 2007)

Vielen Dank, jetzt funktioniert es!  
Editas mit dem Array für tic[] funktioniert nicht, aber ich hab jetzt einfach 9 einzelne Buttons (tic1-tic9) dafür genommen.


----------



## merlin2 (15. Sep 2007)

Du musst das Layout für buttonPanel setzen, bevor du  die Buttons platzierst.
Nimm lieber ein Array.


----------

