Hallo zusammen,
ich habe mal wieder ein kleines Java-Problem. Wenn ich einen (sehr) langen String in ein JTextArea (das sich in einem JScrollPane befindet, in dem nur vertikales Scrollen erlaubt ist) setze, in dem linewrap auf false gesetzt ist, wird er recht fix angezeigt. Wiederhole ich das ganze aber, nachdem ich linewrap auf true gesetzt habe, hängt sich die ganze Applikation, in die das JTextArea eingebunden ist, auf.
Kann es denn sein, dass ihm die paar Zeilenumbrüche (okay, vielleicht auch ein paar mehr) so zu schaffen machen? Gibt es andere Lösungen, um lange Strings auf einem GUI anzuzeigen?
Beste Grüße
Schorsch
Hallo Schorsch,
was genau verstehst du unter einem (sehr) langen String. Kannst du eine Kenngröße nennen? Dann tue ich mich mit dem Experimentieren leichter …
Ciao, Bill
Hi Bill,
ja kann ich: so um die 1 Mio. Zeichen (eine 1 MB große Textdatei). Okay zugegeben, in der Realität werde ich eher selten an diese Grenze kommen, aber ich wollte mal schaun, wie meine Applikation mit solchen Zeichenmengen zurechtkommt. Und dabei bin ich dann eben über diese Merkwürdigkeit gestolpert, dass es ohne geht, mit aber nicht…
Gruß
Schorsch
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hallo Schorsch,
leider habe ich bei meinen Tests keine Lösung finden können.
Auch das JTextPane scheitert bei solch einer Aufgabe.
Vielleicht findet sich in den Vertiefungen der Java-Foren noch eine Lösung?!
Ich bezweifle jedoch die Notwendigkeit der Darstellung eines solch großen Textes an einem Stück.
Beispiel:
Die amerikansiche Unabhängigkeitserklärung umfasst rund 3000 Worte. Gehen wir ohne Nachweis einfach mal von einer durchschnittlichen Wortlänge von 6 Buchstaben und einem Leerzeichen als Trenner aus. Dann wären dies rund 21000 Buchstaben, also rund 2% deines Textes.
Ciao, Bill
Hi Bill,
Danke für deine Bemühungen.
Gruß
Schorsch