[JAVA] Wieso wird 'JTextArea' nicht angezeigt?

...komplette Frage anzeigen

3 Antworten

Das Element wird nicht angezeigt, da keine Größe zugeordnet ist.

Entsprechend setze hier einfach eine Größe.

textarea.setLineWrap(true);
textarea.setWrapStyleWord(true);
textarea.setSize(500, 100);

Dass du eine Größe angeben musst, liegt daran, dass du kein Layout verwendest.

Antwort bewerten Vielen Dank für Deine Bewertung
snipesss 16.08.2016, 15:34

Ok danke. Und wie setzte ich ein layout?

0
KnusperPudding 16.08.2016, 17:13
@snipesss
.setLayout(new BorderLayout());

Wie im Link zu sehen.

Da beim Borderlayout die Himmelsrichtungen eine Rolle spielen, muss das dann bei der add Methode berücksichtigt werden:

.add(label, BorderLayout.NORTH);
0

Gib deinem Frame ein richtiges Layout, dann solltest du es sehen können.

Im Übrigen solltest du den Frame erst dann sichtbar machen, nachdem alle Komponenten initialisiert und hinzugefügt wurden. (Erst laden, dann zeigen)

Antwort bewerten Vielen Dank für Deine Bewertung

Wieso erbt deine Klasse denn von JFrame, wenn du dann eh mit einem anderen Objekt arbeitest? gewöhn dir bitte auch andere imports an das sieht schlimm aus..

import javax.swing.*;

import java.awt.*;

und du sparst dir schonmal 20 Zeilen..

Versuch mal für dein JFrame eine extra Klasse zu machen, nicht dass alles in der Main abläuft, das kann schon sein, dass sich das mal daran aufhängt..

Du initialisierst außerdem alle deine Objekte mehrmals, wieso auch immer.

Möchtest du z.B. auf einen JButton in anderen Methoden der Klasse zugreifen, musst du ihn als Klasseneigenschaft nicht zwingen initialisieren, ein Simples

JButton button2; würde dir reichen.. Meistenst ist das nicht so schlimm aber durch sowas können ab und zu komische Exceptions geworfen werden.

Arbeite auch bitte mit mehr Methoden.

Viele Grüße

Antwort bewerten Vielen Dank für Deine Bewertung
snipesss 15.08.2016, 20:26

Und wieso wird der Text in JTextArea nicht angezeigt?

0
regex9 16.08.2016, 00:52

Bei einem Punkt wäre ich nicht konform: Den Imports. Er lädt halt nur die Komponenten, die er auch wirklich braucht und das ist ok so.

Was meinst du mit den Exceptions, wann können die geworfen werden? Die Komponenten sollten halt spätestens dann initialisiert werden, wenn sie benötigt werden, das ist denke ich klar. Wenn sie als Eigenschaft/Feld/Attribut definiert werden, gehört natürlich noch ein access modifier dazu.

0

Was möchtest Du wissen?