System.out auf JTextArea umlenken?

Hallo,

mein Problem ist folgendes:

ich habe eine bereits fertige Application in Java, fuer die ich nun aus Langeweile auch ein GUI bereitstellen will.
Meine Erfahrungen mit Swing und AWT sind eher gering, so dass ich momentan keinen geschickten Weg sehe, System.out in eine JTextArea umzulenken.

Wenn mir da jemand mit zwei-drei Sätzen die Richtung weisen könnte, wär das grossartig :smile:

Gruss,
Uwe

Wenn mir da jemand mit zwei-drei Sätzen die Richtung weisen
könnte, wär das grossartig :smile:

Geht glaube ich nicht ganz so einfach.

System.out kannst du auf einen OutputStream umleiten, d. h. du brauchst einen OutputStream aus dem du dann die JTextArea aufbaust.

Einfach wäre es über einen String zu machen, du erzeugst einen OutputStream der auf einen String schreibt (hab die genauen Klassen nicht im Kopf, aber mit dem was in java.io enthalten ist geht das), den String verwendest du dann für die JTextArea.

Problem dabei ist, dass das JTextArea dann keine Änderungen mitkriegt, der der auf System.out schreibt müßte auch immer das JTextArea aktualisieren.

Der schönere Weg wäre es deswegen eine eigene Subklasse von OutputStream zu erzeugen die du mit einem Document kombinierst. Das Document kann dann als Grundlage für die JTextArea dienen und kann auch Änderungen an die JTextArea weitergeben.

Hab mir das jetzt nicht genau in der API-Doc angesehen, aber ich denke das wäre ein ungefährer Lösungsweg. :o)

Grüße, Robert

Wenn mir da jemand mit zwei-drei Sätzen die Richtung weisen
könnte, wär das grossartig :smile:

Der schönere Weg wäre es deswegen eine eigene Subklasse von
OutputStream zu erzeugen die du mit einem Document
kombinierst. Das Document kann dann als Grundlage für die
JTextArea dienen und kann auch Änderungen an die JTextArea
weitergeben.

ok, danke - ich werd’s mal auf diese Weise probieren!

Gruss,
Uwe