![]() |
Re: Richedit/Memo "nachprogrammieren"
Ich hatte zwar an eine GUI-Anwendung mit Konsolfenster als child window gedacht, aber von der Funktionalität her ist das egal. Von der Dokumentation her bin ich davon ausgegange, dass auch LF richtig interpretiert wird.
Zitat:
Eines ist mir allerdings immer noch nicht klar. Welchen Sinn macht ein einzelnes LF (ohne CR) in deinem Datenstrom? Eine einwandfreie Umsetzung würde einen Zeilenwechsel unter Beibehaltung der Spalte verursachen. Wozu? Zur Ansteuerung von Bildschirmpositionen auf einem Terminal stehen in der Regel spezielle Steuersequenzen zur Verfügung. marabu |
Re: Richedit/Memo "nachprogrammieren"
Beim Begriff "Terminal" ist dann doch noch was eingefallen.
Bei der ICS-Suite von F. Piette ( ![]() Zitat:
|
Re: Richedit/Memo "nachprogrammieren"
Bei Async Professional von TurboPower ist eine VT100 Terminal Komponente dabei - die sollte ein LF auch korrekt handhaben können.
marabu |
Re: Richedit/Memo "nachprogrammieren"
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
ich häng hier jetzt mal meine Edit-Komponente rein (Achtung: ist noch Baustelle), aber ich glaub nicht, dass Dir das groß weiterhilft, da das Ganze erstens sehr speziell für meine Bedürfnisse ist und zweitens eben ein (relativ) normales Memo ist und kein Terminal. Ich hab leider keine Dokumentation dafür, nur ein paar Zeilen, wie man Formatierungen einfügen kann. Wenn Du das benutzen willst musst Du Dir eben die Verarbeitung von Steuerzeichen selbst basteln (Die Methode AddCharacter ist da evtl. ein guter Start). Gruß xaromz |
Re: Richedit/Memo "nachprogrammieren"
Hi!
Danke für die Tipps! Ciao Frederic |
Re: Richedit/Memo "nachprogrammieren"
Hi!
Zitat:
Perfekt! Wunderbar! Vielen Dank. Ciao Frederic |
Re: Richedit/Memo "nachprogrammieren"
Hallo zusammen
wenn man die Steuerzeichen #10#13 extra interpretieren will dann müsste das doch in etwa so aussehen
Delphi-Quellcode:
bei #10 wird in die nächste Zeile an die Position der vorigen gegangen
curLine := Memo1.Lines.Count-1;
if c = #10 then begin Memo1.Lines.Append(StringOfChar(#32,length(Memo1.Lines[curLine])); end else if c = #13 then begin Memo1.Lines.Delete(curLine); Memo1.Lines.Append(''); end else Memo1.Text := Memo1.Text + c; bei #13 wird die momentane Zeile gelöscht und an Position 1 gesprungen sonst wird Memo1 Text weiter geschrieben. Gruß Stefan |
Re: Richedit/Memo "nachprogrammieren"
Hi!
Nein, so wäre das nicht korrekt! So wie ich das sehe fügst du Leerzeichen ein, oder? Das verändert ja wiederum den Inhalt. Ciao Frederic |
Re: Richedit/Memo "nachprogrammieren"
Also wenn ich so was basteln wollte würde ich wahrscheinlich erstmal die Daten separat "speichern" (eg. String/list) dann kannste mit denen jonglieren wie du willst .. z.b. bei CR den Cursor (separat merken ??) auf Zeilenstart stellen und dann alle ankommenden Zeichen den Rest überschreiben lassen :gruebel:
naja .. sollte eigentlich nicht allzu schwer sein :gruebel: .. (PS: hab im Mittelteil des threats n bissl übersprungen kann also sein, daß der Vorschlag schon kam und abgewiesen wurde :roll:) |
Re: Richedit/Memo "nachprogrammieren"
@fkerber
wenn es hier um die Darstellung im Memo geht sind doch die Spaces egal. Das memo mag es glaube ich (was sie Darstellung angeht) nicht so gerne wenn da lauter #0 stehen. Auserdem lassen sich die ja mit commaText auch wieder rausmachen. Gruß Stefan |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:57 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