![]() |
Formatierungen eines TRichedits
Hallo,
wie kann ich den Inhalt (formatierter Text) eines TRichedits in ein anderes Richedit einfügen, ohne dass die Formatierungen verloren gehen? Wenn ich mit
Delphi-Quellcode:
den Text anhängen will, funktioniert das zwar, aber alle Formatierungen sind weg.
Richedit1.Lines.AddStrings(Richedit2.Lines);
Was kann man da machen? Viele Grüße Florian |
Re: Formatierungen eines TRichedits
|
Re: Formatierungen eines TRichedits
|
Re: Formatierungen eines TRichedits
oh, danke :)
|
Re: Formatierungen eines TRichedits
Hm ne, das ist doch nicht ganz das, was ich wollte...
Ich will die Zeilen ja am Ende des Richedits anhängen, die Prozeduren sind ja nur fürs komplett übernehmen :| |
Re: Formatierungen eines TRichedits
Moin Florian,
das Prinzip bleibt das gleiche. Die Inhalte der RichEdits ein je einen Stream speichern, den zweiten Stream an das Ende des ersten kopieren, und dann das RichEdit aus dem ergänzten Stream laden. Müsste eigentlich so gehen. |
Re: Formatierungen eines TRichedits
hm, *rätsel*...
Wie kopiert man solche Streams? Die OH gibt da nix her :| Hab ich dann nicht 2 Richedit-Files hintereinander? Das würde doch nicht gehen, oder? |
Re: Formatierungen eines TRichedits
Moin Florian,
stimmt, auch wieder. Dann müsste man die RTF-Struktur noch anpassen, also die schliessende } der ersten Datei löschen, und den Header ändern, also z.B. /fonttbl und /colortbl des zweiten RichEdit in den Header des ersten einarbeiten. Dann müssten noch die entsprechenden Formatierungen des zweiten an die Änderungen angepasst werden :? Machbar, aber aufwändig. Dann kommst Du wahrscheinlich einfacher dabei weg, den neuen Text anzuhängen, die Formatierungen auszulesen, und im Ziel-RichEdit zu ändern. |
Re: Formatierungen eines TRichedits
Uiuiui, wer rechnet denn damit, dass das so kompliziert ist... :roll:
Danke dir! |
Re: Formatierungen eines TRichedits
hm, ich bekomm das mit dem RTF-Editieren einfach net hin (also best. Tags entfernen um 2 RTFs in eine zu bekommen...)!
Ich verstehs net, wie kann das so schwer sien?! Gibt doch denke ich einige Progs die das können :| |
Re: Formatierungen eines TRichedits
Moin Florian,
um Dich mit dem Format vertrauter zu machen, könntest Du Dir bei ![]() Welche Formatierungen kommen in Frage für Dein Problem (Farben/Schriftgrössen/Schriften...)? |
Re: Formatierungen eines TRichedits
Ich brauche Farbe, Größe, Fett, Kursiv und Unterstrichen.
Und zwar habe ich 2 TRichEdits und an den Inhalt des 1. kommt immer auf Knopfdruck das, was im 2. steht. Also quasi ein eingabefeld dessen inhalt dann in das große feld hinzugefügt wird. Die Methode, das als puren Text zu haben mit RTF-Formatierungen ist gar nicht so schlecht, da ich das auch als nur-Text weiterverarbeiten könnte. |
Re: Formatierungen eines TRichedits
Moin Florian,
mal als Ansatz: Speichere Dir mal zwei Beispielrichedits ab, und schau Dir die Dateien im Notepad an, und versuche die von Hand zu einem zusammenzumischen. Der Header {\rtf1 bis zur nächsten { sollte bei beiden gleich sein. Die \colortbl ist eine Tabelle der Farbdefinitionen, deren Einträge von 0 durchnummeriert verwendet werden (mit den RTF-Token \cf und \cb) Beispiel: \cf3 => für die Schriftfarbe bis zum Auftreten des nächsten \cf oder \plain die 4. Farbe aus der Tabelle genommen. (\cf => Color Foreground, \cb => Color Background) Jetzt müsstest Du also die beiden Farbtabellen zu einer zusammenfügen, und dabei eine Liste der Nummern für die Farbe(n) des zweiten RichEdits Inhaltes aufbauen. (Ursprüngliche Farbnummer=>Neue Farbnummer). Dann noch alle \cf und \cb Einträge im zweiten anpassen. |
Re: Formatierungen eines TRichedits
uiuiui, das ist für mich 1 Stufe zu hoch :gruebel:
Danke die trotzdem für deine Hilfe!! *immernoch-fassungslos-dass-es-nicht-einfach-geht* |
Re: Formatierungen eines TRichedits
Moin Florian,
schau Dir erst einmal solche Dateien (möglichst wenig Text, aber mit unterschiedlicher Anzahl Farben) im Notepad an. Es ist zwar nicht ganz einfach, aber auch nicht so kompliziert, wie's vermutlich klingt. |
Re: Formatierungen eines TRichedits
Hallo!
es geht noch einfacher.
Delphi-Quellcode:
An Position 27 wird der Inhalt von Richedit1 eingetragen. Mit allem drum und dran;
Richedit1.SelStart:=0;
Richedit1.SelLength:=Length(Richedit1.Text); Richedit1.CopyToClipboard; Pos:=27; Richedit2.SelStart:=Pos; Richedit2.SelLength:=0; Richedit2.PasteFromClipboard; mfg BrunoT [edit=Christian Seehase]Delphi-Tags gesetzt. Bitte künftig selber machen. Danke. Mfg, Christian Seehase[/edit] |
Re: Formatierungen eines TRichedits
Moin Bruno,
klar geht das mit dem Clipboard, aber ich würde mich bedanken, wenn ein Programm eigenmächtig den Inhalt des Clipboards überschreiben würde. ;-) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:19 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 by Thomas Breitkreuz