![]() |
Textausgabe mit Formatierungen
Hallo,
es ist schon ein Weilchen her, dass ich mit Pascal programmiert habe. Auch mein Delphi ist eine ältere Version (5.0). Ich würde gerne folgendes realisieren, weiss aber nicht, wie ich es angehen soll: Ich habe eine Textdatei (als Logfile von einem PC-Spiel erstellt), die gewisse Textformatierungen enthält (z.B. "Escape" - also ASCII 27 - und danach ein "G" bedeutet, dass der folgende Text grün dargestellt werden soll; oder [u] bedeutet, dass der Text unterstrichen werden soll). Ich möchte nun gerne, diese Textdatei auf dem Bildschirm ausgeben und die Formatierung dabei natürlich umsetzen. Wie gehe ich diese Sache an? Kann ich dafür z.B. TMemo verwenden? Was muss ich abändern? Oder muss ich die ganze Ausgabe selbst herstellen (mit TextOut) und dann auch alle Cursor-Bewegungen selbst kontrollieren? Der Text braucht nicht editiert zu werden, allerdings hätte ich gerne eine Suchfunktion dabei. Vielen Dank für Hinweise |
Re: Textausgabe mit Formatierungen
Da wirst du wohl die Logdatei selber parsen müssen und dann in einem RichEdit formatiert ausgeben.
|
Re: Textausgabe mit Formatierungen
Ja, das mit dem Parsen war mir klar. TMemo kann wohl Text nicht unterschiedlich färben, sondern nur einheitlich darstellen.
TRichEdit - hm, das RTF wirkt auf mich sehr kompliziert; damit hab ich noch nicht gearbeitet. Danke für die Antwort |
Re: Textausgabe mit Formatierungen
Dann speicher den Inhalt des RichEdit mit der Base64-Codierung. Es gibt hier eine Base64.pas. Damit kannst du die Formatierung mit speichern und anschließend mit laden!
|
Re: Textausgabe mit Formatierungen
Nein, nein, ich brauch den Logfile nicht zu speichern, ich will ihn nur ausgeben. Ich muss nur noch raus bekommen, wie ich dann z.B. von der Farbe schwarz auf Farbe grün umschalte, um ein Wort in grün auszugeben, und wie ich wieder zurück wechsle.
|
Re: Textausgabe mit Formatierungen
Hallo Mani64,
die Alternative zu luckies vorschlag wäre natürlich auf einem Canvas mit textout zu arbeiten. Was aber eigentlich nur zu Lernzwecken zu empfehlen ist. Von RTF solltest Du Dich nicht schrecken lassen, da RTF ja "nur" das Speicherformat ist. Im Prinzip gehst Du so vor: Text in Richedit laden suche Grün Text der Grün sein soll mit Selstart/sellength markieren mit SelAttributes grün einfärben fertig das wiederholst Du so lange bis es keine Formatierungsanweisungen mehr in Deinem Text gibt. Gruß K-H |
Re: Textausgabe mit Formatierungen
.. auch wenn es vielleicht keiner lesen will,
aber das sollte auch via TStringGrid (draw). Grüße Klaus |
Re: Textausgabe mit Formatierungen
Mit TStringGrid? und dann den ganzen Text in eine Zelle schreiben - oder wie? Wieviel Text kann denn eine Zelle fassen? Der logfile kann schon mehrere MB groß werden.
|
Re: Textausgabe mit Formatierungen
also ich würde ein StringGrid eher für ungeeignet halten.
|
Re: Textausgabe mit Formatierungen
Hallo Zusammen,
naja wenn das Logfile "augenscheinlich" formatiert ist, wäre ein Stringgrid vielleicht keine schlechte Idee, aber Grün und Fett und.... muß trotzdem umgesetzt werden oder dann doch nicht? Gruß K-H |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:25 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz