TRichEdit: \n am paste-ende



  • Paste-Text ins RichEdit hat oft ein \n als Abschluß, obwohl man trennscharf kopiert hatte (aus Webseiten). Die Antwortform hat es nicht. Im RichEdit soll es auch nicht sein. Ich kann jedes Zeichen am paste-ende irgendwo im Text abfragen, beim \n gelingt es nicht. Konnte das Prob nur mit 2 Komponenten lösen. Geht das auch eleganter?



  • Ich kann jedes Zeichen am paste-ende irgendwo im Text abfragen, beim \n gelingt es nicht.

    Natürlich gelingt das, wenn man's nur richtig macht. 😉



  • Sind wir heute wieder sehr geistreich? 😃

    "Geht das auch eleganter?" War die Hauptfrage.



  • Man, mach einfach das "\r\n" am Ende der letzten Zeile wech!



  • Die letzte Zeile vom PasteText ist irgendwo im gesamten Text. SubString definieren und trotzdem sehen, wie die Suche bis Textende geht, war nicht der Hit. Usw... AnsLastChar wär noch eine Hoffnung, wenn das nicht auch wieder durchprüft. Ich bring hier aber die Syntax nicht zusammen. Insgesamt Pulver verschossen, mitten im Text keine Chance gefunden.



  • Äh, du sollst das \r\n wegmachen, sobald der Text im RichEdit ist.



  • Muß ich auch sofort machen. Ich will ja das Return während der laufenden Arbeit gar nicht sehen. Ich speicher die Position vor dem Pasten und nach dem Pasten. Zwischen beiden definier ich den SubString. Noch in der paste-Routine ermittel ich das letzte Zeichen von SubString. Es ist aber sogar passiert, daß ich am Ende des Textes ganze Textpassagen weggelöscht hab. Bin die Sache also total falsch angegangen. Gelingt es vielleicht nur über einen API-Handler? So weit bin ich noch nicht.



  • Ich versteh kein Wort. Du musst die Nachricht WM_PASTE abfangen und dann einfach die letzten Zeichen wegmachen.



  • Oh. Du setzt voraus, dass ich das weiß.
    "System - Window-Messages abfangen im BCB". Möglichkeit 3. Was will ich tun? Nicht in die 2. Komponente, nicht einfügen lassen. Vorher \r\n abschneiden, falls vorhanden. Aber doch nicht frei auf dem Weg zum RichEdit?

    Also da hat noch nix gezündet. Ich muß noch mal zurückgeben. leider.


Anmelden zum Antworten