hallo leute bin neu, also ich bin umsteiger, ich habe bis jetzt PHP programmiert und möchte jetzt java lernen, ich habe mir auch schon alles wichtige auf youtube angesehen und möchte jetzt ein kleines programm schreiben mit GUI, also ich habe das aktuelle JDK und arbeite mit Netbeans 8.01 und habe jetzt ein JFrame erstellt mit einem BorderLayout.
Im BorderLayout.West habe ich ein JPanel erstellt mit GridLayout und hier drinne einige JButton, das funktioniert auch bestens.
Im BorderLayout.Center habe ich ein JPanel erstellt mit GridLayout und möchte hier eine eingabemaske erstellen mit name, vorname, str. … ich habe JLabel erstellt und JTextField nur habe ich das problem das mir die textfelder nicht angezeigt werden, die JLabel funktionieren einwandfrei und wenn ich JButtons erstelle auch nur die JTextField funktionieren nicht und ich weiss nicht warum weiss da einer von euch so wie wo wann was ich falsch mache oder braucht ihr noch den quellcode?
Liegt vermutlich an der Platzverteilung des Layoutmanagers, ein JTextField hat im Standard keine besonders große PreferredSize, mal die Gewichtung anpassen oder einfach mal new JTextField(10); ausprobieren.
Naja, kleiner Anfängerfehler dem glaub ich jedem passiert (und schon passiert ist) :
{
public NewFrame()//konstruktor
{
super("Fahrenholz Doppelkopf");
setLayout(new BorderLayout());
setSize(500,500);
setVisible(true);
//... rest
}
}```
Nope, nope, nope ... setVisible() kommt immer am Ende (oder um den Flamewar zu vermeiden : nach dem die GUI zusammengebaut wurde).
Tipp : nicht von JFrame erben, siehe dazu : [Warum man nicht von JFrame/JDialog erben sollte](http://wiki.byte-welt.net/wiki/Warum_man_nicht_von_JFrame/JDialog_erben_sollte)