Hi,
die NullPointerException hat mit dem Link nichts zu tun. Da geht es darum, die Oberfläche sich auch aktualisieren zu lassen, damit du den neuen Text auch im Textfeld siehst.
Das einzige, was in deiner run-Methode null sein kann, ist deine Variable (die du auch noch klein schreiben solltest, dann passt alles ). Offenbar wird diese außerhalb erst danach initialisiert.
Wichtig in Java ist folgendes:
Es gibt keine Referenzen, alles was übergeben wird wird ausnahmslos kopiert!
Beispiel:
Bei der Übergabe ist prozessstream null. Und auch, wenn du später etwas zuweist, die Variable wurde kopiert und bleibt innerhalb von RunLogThread auch null.
Ich kann mir bei deinem Code und der geworfenen Exception eigentlich nichts anderes vorstellen, was die Ursache sein kann. Prüf mal nach, ob das Textfeld erst hinterher instanziert wird.
Falls das nicht der Grund für den Fehler sein sollte, müsstest du mal einen Codeausschnitt von außerhalb posten, also wo dein RunLogThread() und das Textfeld instanziert werden.
Gruß
Daniel
die NullPointerException hat mit dem Link nichts zu tun. Da geht es darum, die Oberfläche sich auch aktualisieren zu lassen, damit du den neuen Text auch im Textfeld siehst.
Das einzige, was in deiner run-Methode null sein kann, ist deine Variable (die du auch noch klein schreiben solltest, dann passt alles ). Offenbar wird diese außerhalb erst danach initialisiert.
Wichtig in Java ist folgendes:
Es gibt keine Referenzen, alles was übergeben wird wird ausnahmslos kopiert!
Beispiel:
Java:
StyledText prozessstream;
RunLogThread thread = new RunLogThread(prozessstream);
prozessstream = new StyledText();
Bei der Übergabe ist prozessstream null. Und auch, wenn du später etwas zuweist, die Variable wurde kopiert und bleibt innerhalb von RunLogThread auch null.
Ich kann mir bei deinem Code und der geworfenen Exception eigentlich nichts anderes vorstellen, was die Ursache sein kann. Prüf mal nach, ob das Textfeld erst hinterher instanziert wird.
Falls das nicht der Grund für den Fehler sein sollte, müsstest du mal einen Codeausschnitt von außerhalb posten, also wo dein RunLogThread() und das Textfeld instanziert werden.
Gruß
Daniel