Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   C# [.NET] Textbox : Sonderzeichen darstellen? (https://www.delphipraxis.net/87362-%5B-net%5D-textbox-sonderzeichen-darstellen.html)

Phoenix 27. Feb 2007 16:20


[.NET] Textbox : Sonderzeichen darstellen?
 
Jo,

ich will in einer Multiline-Textbox Leerzeichen als solche Anzeigen (·) und auch Return-Eingaben (¶) darstellen.
Zitat:

Zitat von Beispiel
Das·ist·ein·Testtext¶
mit·einem·Zeilenumbruch.

Wie bekomm ich das am geschicktesten hin?

DGL-luke 27. Feb 2007 16:27

Re: [.NET] Textbox : Sonderzeichen darstellen?
 
Hmm... naja, ich würd halt im Change-Event alle Leerzeichen in solche Punkte umwandeln und vor alle Zeilenumbrüche so n Endezeichen hinpacken. Beim ausschalten natürlich wieder zurück.

Phoenix 27. Feb 2007 16:32

Re: [.NET] Textbox : Sonderzeichen darstellen?
 
Genau das wollte ich eigentlich vermeiden...

DGL-luke 27. Feb 2007 16:36

Re: [.NET] Textbox : Sonderzeichen darstellen?
 
Klar, aber ich glaube nicht, dass es was eleganteres gibt. Das Leerzeichen könntest du per Schriftart austauschen, aber da beissts beim Umbruch schon wieder aus...

Dax 27. Feb 2007 16:57

Re: [.NET] Textbox : Sonderzeichen darstellen?
 
Ich kenne mich mit den interna der Textbox nicht so gut aus, aber ich würde das an deiner Stelle über ein Ownerdraw lösen, wenn es keine eingebaute Möglichkeit gibt (und die gibt es soweit ich weiß nicht).

Phoenix 27. Feb 2007 16:57

Re: [.NET] Textbox : Sonderzeichen darstellen?
 
Da hakts auch grad.

Ich kann einen beliebigen String ersetzen, aber \r\n -> ¶\r\n beinhaltet halt auch \r\n, welches dann wieder ersetzt wird welches dann wieder ersetzt wird....

Dax 27. Feb 2007 17:00

Re: [.NET] Textbox : Sonderzeichen darstellen?
 
Aber wenn du nur einen Ersetzungsdurchgang machst und bei der Umkehraktion die Paragraphenzeichen einfach löschst, dürfte das doch nicht nicht funktionieren? :gruebel:

Phoenix 27. Feb 2007 17:04

Re: [.NET] Textbox : Sonderzeichen darstellen?
 
Zitat:

Zitat von Dax
Aber wenn du nur einen Ersetzungsdurchgang machst

Hrm.. und wenn er danach nochmal eine Zeile einfügt?
Ich muss das mindestens jedesmal dann machen, wenn eine neue Zeile eingefügt wird. Das kann ich aber nicht separat abfangen. Also muss ich es jedesmal machen, wenn ein Zeichen eingefügt wird. Das ist also das TextChanged event....

Naja, das gibt halt dann ne Menge Code für die Prüfung ob ich da jetzt ersetzen muss oder nicht....

idontwantaname 27. Feb 2007 17:22

Re: [.NET] Textbox : Sonderzeichen darstellen?
 
Also ich würde dir auch raten, das ganze im OwnerDraw zu realisieren, da man dann auch einfach den Text aus oder in die Textbox kopieren kann, ohne diese Zeichen mitzunehmen.

DGL-luke 28. Feb 2007 16:34

Re: [.NET] Textbox : Sonderzeichen darstellen?
 
Hallo,

.Net hat regex schon eingebaut.

Also solltest du da wirklcih kein Problem haben:

"=(?<!¶)\r\n="

Eventuell musst du das "¶"-Zeichen maskieren.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:36 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz