TMaskEdit im Batchprogramm
-
Hallo ihr lieben
Ich hab mal ne Frage zu der Komponente TMaskEdit und zwar möchte ich in meinem Batchprogramm einen String auf ein bestimmtes Format prüfen und dachte das ginge ganz einfach mit der Komponente TMaskEdit. Aber leider musste ich feststellen, dass es nicht geht.
Er geht über die Funktion ValidateEdit ohne einen Fehler auszuspucken hinweg. Jetzt meine Frage, weiß jemand was ich falsch mache?
Hier mein Code:// TwwEdit Komponente bereitstellen, um die Formatmaske zu testen TMaskEdit *tmpEdit = new TMaskEdit(this); // Formatmaske für das Fragefeld ermitteln mask = glbDB->DB_GetFragefeldFormat(md,kontakt,idx-31); tmpEdit->Modified = true; tmpEdit->EditMask = mask; tmpEdit->Text = (String)addr[idx]; //masktest = tmpEdit->IsMasked; try { tmpEdit->ValidateEdit(); testpassed = true; } catch(...) { testpassed = false; Abort(); } .....
mask hat den Wert "##.##.####" (also an tmpEdit->EditMask übergeben)
(String)addr[idx] hat den Wert "test" (was ja nicht zulässig ist)Ich hoffe ihr könnt mir helfen oder habt anregungen für einen anderen Lösungsweg.
-
Ceene schrieb:
Ich hoffe ihr könnt mir helfen oder habt anregungen für einen anderen Lösungsweg.
Anderer Lösungsweg:
Such zuerst mal das richtige Forum auf. Das gehört ins VCL Forum:
http://www.c-plusplus.net/forum/viewforum-var-f-is-2.htmlHier geht es um Standard C++ und da gibt es kein TMaskEdit, geschweige denn etwas was mit einem GUI zu tun hat
Grüssli
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum VCL (C++ Builder) verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
versuch mal die Reihenfolge deiner Befehle umzustellen:
tmpEdit->EditMask = mask; tmpEdit->EditText = "Test"; //oder tmpEdit->Text tmpEdit->Modified = true;
außerdem ist deine Maske falsch, wenn du ein Datum abfragen willst sollte die Maske folgendes Format haben: "!99/99/0000;1;_"
das Doppelkreuz steht wahrscheinlich eher für alle Zeichen und nicht nur für Zahlen und wird deshalb nie zu einem Fehler führenwarum bzw. was willst du auf ein bestimmtes Format prüfen? Datum? Zeit?
-
Ich will einen String auf ein bestimmtes Format prüfen.
Wobei sich wärend der Laufzeit die Mask auch ändern kann.
Aber im Grunde habe ich immer eine String-Variable die ich auf ein bestimmtes Format (Mask) prüfen will.
-
Hab es hinbekommen. Danke an alle.