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/)
-   -   Delphi EditMask: Zahlen und Sternchen erlauben (https://www.delphipraxis.net/114156-editmask-zahlen-und-sternchen-erlauben.html)

Helmi 20. Mai 2008 17:44


EditMask: Zahlen und Sternchen erlauben
 
Hallo,

Ich hab ein MaskEdit in dem eine Telefonnummer eingegeben werden kann.

Das EditMask schaut so aus: \(\099999\) 999999999999999999;1;_

Nun würd ich gerne erlauben, dass man ein Sternchen (*) eingeben kann.

Also nur Zahlen (0-9) und Sternchen (*).

Wie könnt ich das am Einfachsten machen?

Ich vermute mal (bzw. ich weiss es), dass es bei dem EditMask keine
Möglichkeit gibt, anzugeben, welche (definierten) Zeichen eingebbar
sind oder nicht.

Wahrscheinlich muss ich Zahlen und Buchstaben erlauben und dann
den String auf Zahlen und Sternchen prüfen.

Der.Kaktus 20. Mai 2008 17:50

Re: EditMask: Zahlen und Sternchen erlauben
 
Hallo,
kann Dir nur Orpheus empfehlen.

Privateer3000 20. Mai 2008 17:52

Re: EditMask: Zahlen und Sternchen erlauben
 
Ich vermute mal das Editmask von TEdit
abgeleitet ist, und damit OnKeypress unterstützt
Also prüfe während der Eingabe die Zeichen
Delphi-Quellcode:
if not (Key in ['0'..'9', Char(VK_BACK),'*']) then
  Key := #0;
if (Key in ['.']) then
  Key :=',';

Matze 20. Mai 2008 17:54

Re: EditMask: Zahlen und Sternchen erlauben
 
Hallo

Zitat:

Zitat von Helmi
Ich vermute mal (bzw. ich weiss es), dass es bei dem EditMask keine
Möglichkeit gibt, anzugeben, welche (definierten) Zeichen eingebbar
sind oder nicht.

Was fragst du dann noch? :stupid:

Mir ist keine Möglichkeit bekannt, wie man das per Maske einstellen kann und vermute ebenfalls, dass du den Weg über OnKeyPress bzw. OnChange und/oder eine anschließende Überprüfung (damit auch Text aus der Zwischenablage berücksichtigt wird) gehen musst.

Grüße

Edit: Ich glaube der rote Kasten macht verspäteten Winterschlaf ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:37 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