Textarea zeigt Text nicht an

R

raemy

Gast
Guten Tag euch allen

Ich habe ein kleines Problem, betreffend einer Textarea.

Ich bin an einer Client/Server Applikation (dachte mir trotzdem, dass ich in dieses Forum schreibe, da meine Frage nichts mit der Client/Server Verbindung zu tun hat), welche sich mit einem Controller verbinden und kommunizieren soll. Nun möchte ich, dass es alle Ereignisse in einer Textarea anzeigt.

Hier noch das GUI:

frameCapture.JPG


Wenn ich auf den Button "Verbinden" klicke, wird folgendes ausgeführt:
Java:
private void buttonDisconnectActionPerformed(java.awt.event.ActionEvent evt) {
  displayEvents("click-connect"); //Methode, um ein Event auszugeben. Hier nur als Test.
        if (app.isConnected() == false) {
            app.connect(textIP.getText(), PORT);
           // textIP.setEnabled(false);
        } else {
            JOptionPane.showMessageDialog(null, "Sie sind schon verbunden!", "Fehler", JOptionPane.OK_OPTION);
        }
}

Methode für das Anzeigen eines Events:
Java:
public void displayEvents(String event) {
        String msg = event + " - " + new SimpleDateFormat("HH:mm:ss.SSS").format(new Date());
        textEvents.append(msg + "test" + "\n");
        System.out.println(msg); //Test, ob msg etwas enthält, weil in der Area nichts angezeigt wird
    }

Diese zwei Methoden befinden sich in einer Klasse Namens View.

Die Main Methode, sowie die connect Methode befinden sich in der Klasse App, welche im gleichen paket ist.

Methode um zu Verbinden:
Java:
public void connect(String ipString, int port) {
        view = new View();
        event = "Alles Banane bis hier";
        view.displayEvents(event);
        try {
            ip = InetAddress.getByName(ipString);
            event = "Verbindungsaufbau zu " + ip + " über den Port " + port;
            view.displayEvents(event);
            //1. creating a socket to connect to the server
            try {
                requestSocket = new Socket(ip, port);
                //2. get Input and Output streams
                out = new ObjectOutputStream(requestSocket.getOutputStream());
                out.flush();
                // in = new ObjectInputStream(requestSocket.getInputStream());
            } catch (Exception ex) {
                event = "Error: " + ex.getMessage();
                view.displayEvents(event);
            }
        } catch (UnknownHostException unknownHost) {
            event = "Versuch, einen unbekannten Host zu erreichen";
            view.displayEvents(event);
        }
        if (requestSocket != null) {
            if (out != null) {
                connected = true;
                view.enableButtons(true);
            }
        }
    }

Mein Problem ist nun, dass die TextArea den Text anzeigt, wenn ich auf den Button Verbinden klicke, jedoch nicht, wenn die Methode zum Verbinden ausgeführt wird. Die Methode displayEvents wird zwar ausgeführt und das System.out.println() funktioniert auch, was bedeutet, dass String events nicht null sein kann aber die Textarea zeigt nichts an.

ich habe es auch schon mit einem repaint() nach dem Füllen versucht, was jedoch keine Wirkung zeigte.

Meine Theorie ist nun, dass es einen zweiten Durchgang machen könnte, in dem es den String event auf "" setzt, jedoch habe ich keine Idee, wo und wie es dazu kommen kann.
Vielleicht kann mir jemand von euch helfen?

Ich bedanke mich schon im Voraus für jede Antwort.
Grüsse
Raemy
 

Michael...

Top Contributor
Java:
public void connect(String ipString, int port) {
        view = new View();
        event = "Alles Banane bis hier";
        view.displayEvents(event);
"Alles Banane bis hier" wird auf der TextArea angezeigt?
Vermutlich nein. In Zeile 2 erzeugst Du ein neues View Objekt. Das ist ersteinmal merkwürdig und vermutlich auch falsch, da die Texte ja auf einem bestehenden View Objekt dargestellt werden sollen.
 
R

raemy

Gast
"Alles Banane bis hier" wird auf der TextArea angezeigt?
Vermutlich nein. In Zeile 2 erzeugst Du ein neues View Objekt. Das ist ersteinmal merkwürdig und vermutlich auch falsch, da die Texte ja auf einem bestehenden View Objekt dargestellt werden sollen.

Daran habe ich auch schon gedacht, das Problem ist nur, dass wenn ich keine neue View mache, es mir einen Nullpointer gibt, obwohl ich die View in der Main Methode erstellt habe. Aber es klingt einleuchtend, was du geschrieben hast.

Das Problem ist jetzt, warum reicht es nicht, in der Main die View zu erstellen? Normalerweise sollte das doch funktionieren?

Java:
public static void main(String[] args) {
        Worker worker = new Worker();
        View view = new View();
        view.setVisible(true);
    }
(Habe nun noch die Klasse Worker hinzugefügt und alle Methoden, bis auf die Main verschoben.
 

Xeonkryptos

Bekanntes Mitglied
Daran habe ich auch schon gedacht, das Problem ist nur, dass wenn ich keine neue View mache, es mir einen Nullpointer gibt, obwohl ich die View in der Main Methode erstellt habe. Aber es klingt einleuchtend, was du geschrieben hast.

Das Problem ist jetzt, warum reicht es nicht, in der Main die View zu erstellen? Normalerweise sollte das doch funktionieren?

Java:
public static void main(String[] args) {
        Worker worker = new Worker();
        View view = new View();
        view.setVisible(true);
    }

Das funktioniert nicht, weil du die Referenz des Objektes erst weiterleiten müsstest! Woher sollen andere Klassen wissen, welche Referenz genau dieses View hat? Außerdem ist es hier lokal definiert. Du müsstest es entweder durch eine Methode weitergeben: setter oder du erstellst es nicht in der Main-Methode sondern in der Klasse, die dieses View benötigt!
 

Michael...

Top Contributor
obwohl ich die View in der Main Methode erstellt habe.
Da die Variable view in der main deklariert wird, gilt sie auch nur in dem begrenzten Bereich.
Eine schnelle aber unsaubere Lösung, wäre sie statt in der main als statische Klassenvariable zu deklarieren und in der main nur zu initialisieren.
Saubere wäre es hier OOP anzuwenden.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H TextArea zeigt kein Text an AWT, Swing, JavaFX & SWT 6
G Textarea zeigt Text erst am Schluss an AWT, Swing, JavaFX & SWT 2
S TextArea zeigt String nicht richtig an AWT, Swing, JavaFX & SWT 4
L TextArea Zeichenabstand gleich machen AWT, Swing, JavaFX & SWT 8
ProggersWorld JavaFX TextArea BackgroundImage wird nicht angezeigt AWT, Swing, JavaFX & SWT 3
K Textarea aktuallisiert sich nicht, nach Auswahl (Itemlistener) AWT, Swing, JavaFX & SWT 3
D JavaFX TextArea Probleme bei langen Zeilen AWT, Swing, JavaFX & SWT 1
D Hohe Prozessorauslastung bei Ausgabe auf TextArea AWT, Swing, JavaFX & SWT 2
N Einer TextArea ein ScrollPane hinzufügen AWT, Swing, JavaFX & SWT 8
N Textdatei GUI, Text in Textarea anzeigen mehrere Zeilen AWT, Swing, JavaFX & SWT 1
Hatsi09 TextArea formattieren AWT, Swing, JavaFX & SWT 4
ralfb1105 JavaFX MVC: Thread in Model Class mit Ausgabe in TextArea AWT, Swing, JavaFX & SWT 10
E Eingabe von Zahlen in TextArea AWT, Swing, JavaFX & SWT 2
K JavaFX: TextArea updated nicht AWT, Swing, JavaFX & SWT 7
M JavaFX TextArea disabled - ScrollBar enabled AWT, Swing, JavaFX & SWT 3
G Probleme mit TextArea AWT, Swing, JavaFX & SWT 5
R Java FX - Fxml - relative Größenangaben für Breite und Höhe einer TextArea AWT, Swing, JavaFX & SWT 8
R Swing Durch JComboBox-Item eine TextArea aktualisieren AWT, Swing, JavaFX & SWT 2
MrSnake JavaFX TextArea updated nicht AWT, Swing, JavaFX & SWT 22
N JavaFX TextArea Updaten bevor Prozess gestartet wird AWT, Swing, JavaFX & SWT 7
B Java FX FXML Textarea SceneBuilder als XML Editor AWT, Swing, JavaFX & SWT 1
T JavaFX System.out.println in TextArea AWT, Swing, JavaFX & SWT 15
F JavaFX JavaFX HTMLEditor-Eingabe in Textarea als HTML anzeigen AWT, Swing, JavaFX & SWT 2
E To get a color text on the TextArea AWT, Swing, JavaFX & SWT 4
E To get color text on the TextArea AWT, Swing, JavaFX & SWT 5
S passende PaintComponent ? Zeichnen in TextArea mit Scrollpane ? AWT, Swing, JavaFX & SWT 2
E Swing Error icon in der TextArea AWT, Swing, JavaFX & SWT 1
thobren JavaFX textarea nach setPrefRowCount Ansicht aktualisieren AWT, Swing, JavaFX & SWT 1
thobren JavaFX Inhalte aus dynamischen vbox mit TextArea auslesen AWT, Swing, JavaFX & SWT 9
thobren Swing Im JPanel wird nur TextArea gelöscht AWT, Swing, JavaFX & SWT 13
J JavaFX TextArea dynamisch Icon im Background anzeigen AWT, Swing, JavaFX & SWT 2
M JavaFX TextArea einzelne Buchstaben färben AWT, Swing, JavaFX & SWT 3
M JavaFX TextArea richtig formatieren AWT, Swing, JavaFX & SWT 4
S ScrollPane in Textarea und auf Panel AWT, Swing, JavaFX & SWT 4
S Die Rücktaste und Entfernen in einer Textarea blockieren AWT, Swing, JavaFX & SWT 3
S TextArea get Selected row(Text) AWT, Swing, JavaFX & SWT 6
F textarea lässt panel verschwinden AWT, Swing, JavaFX & SWT 4
V Swing Update Textarea AWT, Swing, JavaFX & SWT 2
E TextArea - Maximale Zeichenanzahl AWT, Swing, JavaFX & SWT 2
N Swing teilstring in textarea fett machen AWT, Swing, JavaFX & SWT 13
J Swing TextArea mit nicht-editierbarem Text AWT, Swing, JavaFX & SWT 7
W Vergleich zweier Strings und schreiben in Textarea AWT, Swing, JavaFX & SWT 12
R AWT TextArea schreibunfähig machen AWT, Swing, JavaFX & SWT 5
J Werkzeugleiste für TextArea? AWT, Swing, JavaFX & SWT 10
M TextArea über mehrere Zeilen - wie Zeileanzahl abfragen? AWT, Swing, JavaFX & SWT 5
S Textarea und Enter AWT, Swing, JavaFX & SWT 5
El_Lobo Swing Swing TextArea und JTextField werden nicht aktualisiert AWT, Swing, JavaFX & SWT 2
S Frage zu TextArea AWT, Swing, JavaFX & SWT 2
C TextArea Ausgabe immer ganz oben AWT, Swing, JavaFX & SWT 3
C Konsolenausgabe in TextArea ausgeben AWT, Swing, JavaFX & SWT 8
P Swing Methodenaufruf beeinflusst TextArea nicht. AWT, Swing, JavaFX & SWT 6
S TextArea ausgabe ohne JFrame zu implementieren AWT, Swing, JavaFX & SWT 2
M Swing Eine andere Klasse über Button starten und in TextArea ausgeben AWT, Swing, JavaFX & SWT 13
M Inhalt aus TextArea verarbeiten AWT, Swing, JavaFX & SWT 4
A Swing Text von System.out.printIn in eine TextArea übergen AWT, Swing, JavaFX & SWT 12
S Sobald ich TextArea mit Text fülle alles weg? AWT, Swing, JavaFX & SWT 5
P TextArea Größenänderung AWT, Swing, JavaFX & SWT 4
M problem mit keylistener/textarea AWT, Swing, JavaFX & SWT 6
H anderes font in textarea AWT, Swing, JavaFX & SWT 2
E Datei in TextArea anzeigen AWT, Swing, JavaFX & SWT 12
Luy Per TAB-Taste aus TextArea wieder raus? AWT, Swing, JavaFX & SWT 5
H AWT TextArea, TextListener AWT, Swing, JavaFX & SWT 5
D Swing [BoxLayout] Nur TextArea und nicht TextField vergroessen AWT, Swing, JavaFX & SWT 2
W JTextArea/TextArea kriegt keinen Fokus AWT, Swing, JavaFX & SWT 6
A Strings an Textarea anderer Klasse append(en) AWT, Swing, JavaFX & SWT 12
U Problem mit dem TextArea.appen()- Befehl AWT, Swing, JavaFX & SWT 2
W JTextArea vs TextArea AWT, Swing, JavaFX & SWT 3
K TextArea auf Scrollpane AWT, Swing, JavaFX & SWT 3
A Dateien in TextArea ausgeben AWT, Swing, JavaFX & SWT 6
G Textarea soll automatisch mitrollen AWT, Swing, JavaFX & SWT 2
G Feste Größe einer TextArea AWT, Swing, JavaFX & SWT 2
G Kontextmenü zum kkopieren in einer TextArea AWT, Swing, JavaFX & SWT 5
D GUI + TextArea + inhalt der wörter zählen AWT, Swing, JavaFX & SWT 4
V Hilfe :( bekomme textarea nicht versetzt AWT, Swing, JavaFX & SWT 2
M TextArea relativ zur Fenstergröße AWT, Swing, JavaFX & SWT 14
Y Zahlen aus einer Textarea auslesen AWT, Swing, JavaFX & SWT 2
V textarea Problem Positionierung AWT, Swing, JavaFX & SWT 2
G textarea.read funzt net in Jar-Datei AWT, Swing, JavaFX & SWT 7
K Center Text in TextArea AWT, Swing, JavaFX & SWT 8
ModellbahnerTT Ersatz für Textarea AWT, Swing, JavaFX & SWT 13
K Zeilen von TextArea auswählen AWT, Swing, JavaFX & SWT 3
C TextArea Problem :( TextArea über komplettem JFrame AWT, Swing, JavaFX & SWT 2
S Text in Textarea über empfangenen Socketstream anzeigen AWT, Swing, JavaFX & SWT 4
M Problem mit Layout wegen Textarea AWT, Swing, JavaFX & SWT 3
F Scrollpane scrollt immer zur TextArea AWT, Swing, JavaFX & SWT 8
F Graphics2D scale und Positionierung einer TextArea AWT, Swing, JavaFX & SWT 8
J TextArea unkontrollierbar AWT, Swing, JavaFX & SWT 4
G toString -> TextArea AWT, Swing, JavaFX & SWT 2
F Einlesen von text in textArea mittels for-schleife AWT, Swing, JavaFX & SWT 3
L TextArea AWT, Swing, JavaFX & SWT 6
X textarea updaten bevor eine Methode aufegerufen wird AWT, Swing, JavaFX & SWT 6
G keyListener & textarea AWT, Swing, JavaFX & SWT 2
C Text in TextArea gestalten AWT, Swing, JavaFX & SWT 2
M Farben im TextArea AWT, Swing, JavaFX & SWT 5
N TextArea positionieren AWT, Swing, JavaFX & SWT 3
P TextArea zeilenumbruch AWT, Swing, JavaFX & SWT 7
André B. formatierung in TextArea AWT, Swing, JavaFX & SWT 7
C Textarea kontinuerlich updaten AWT, Swing, JavaFX & SWT 3
D setCaretPosition, nicht-editierbare TextArea AWT, Swing, JavaFX & SWT 8
J TextArea begrenzen AWT, Swing, JavaFX & SWT 6

Ähnliche Java Themen

Neue Themen


Oben