AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Fehlermeldung durch EditMaske

Ein Thema von bfr · begonnen am 24. Jan 2006 · letzter Beitrag vom 17. Okt 2008
Antwort Antwort
bfr

Registriert seit: 20. Jan 2006
Ort: Neuwied
8 Beiträge
 
Delphi 7 Personal
 
#1

Fehlermeldung durch EditMaske

  Alt 24. Jan 2006, 20:32
hallo @ all

ich habe ein Problem mit einer Maske die folgende editmask Eigenschaft hat: !90/90/0000;1;_
sie soll für ein Datum im Format TT.MM.JJJJ sein. Wenn ich im Program in der maske jedoch mindestens einen unterstrich _ nicht durch eine Zahl ersetzte und die Maske durch Drücken von Enter Tabulator oder mit einem Mausklick verlasse gibt es eine Fehlermeldung mit dem Text:
Project ProjectTagerechner.exe raised exception class EDBEditError with message'Invalid input value. Use escape key to abandon changes'. Process stopped. Use Step or Run to continue.

Wie bekomme ich diese Fehlermeldung weg oder durch eine selbstgeschriebene ersetzt?

Danke schonmal
René
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Fehlermeldung durch EditMaske

  Alt 24. Jan 2006, 21:49
Gibt es bei EditMask nicht eine Eigenschaft OnChange?

Was spricht gegen Try...except?
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
bfr

Registriert seit: 20. Jan 2006
Ort: Neuwied
8 Beiträge
 
Delphi 7 Personal
 
#3

Re: Fehlermeldung durch EditMaske

  Alt 24. Jan 2006, 22:31
ich bin noch anfänger auf delphi und kenne deshalb noch nicht soviele befehle. Mit OnExit(wird doch aktiv wenn die Maske verlassen wird oder?) habe ich gerade ausprobiert aber es hat nicht geholfen. Wenn ich einen BreakPoint auf das Begin der Prozedur setzte wird dieser nicht erreicht vor der Fehlermeldung. Wenn ich OnChange benutzte prüft er bei jedem eintippen einer Zahl ob die Länge stimmt oder noch Unterstriche vorhanden sind und bringt dann jedes mal die Nachricht.

Hier mal die Prozedur die ich dazu geschrieben habe:
Delphi-Quellcode:
procedure TfrmMain.laengepruefen(Sender: TObject);
begin
if length(txtgeburtstag.Text) <> 8
   then Showmessage('Das Datum muss 8 Zeichen lang sein');
end;
Mit Try except weiß ich leider nicht wo ich dies ansetzten soll. Ich hoffe das du mir helfen kannst und schonmal danke für deine Mühe.
René
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Fehlermeldung durch EditMaske

  Alt 25. Jan 2006, 15:35
Jetzt verstehe ich dein Problem.
Die Länge kannst du so nicht ermitteln weil diese (in deinem Fall) Immer 10 ist(durch die Unterstriche).
ICh probier noch ein bischen rum und meld mich dann falls kein anderer eine Lösung Parat hat
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
bfr

Registriert seit: 20. Jan 2006
Ort: Neuwied
8 Beiträge
 
Delphi 7 Personal
 
#5

Re: Fehlermeldung durch EditMaske

  Alt 25. Jan 2006, 16:19
jetzt habe ich mit dieser Prozedur geprüft ob ein nichtausgefülltes Zeichen in der Maske ist:

Delphi-Quellcode:
procedure TfrmMain.laengepruefen(Sender: TObject);
var i : integer;
begin
  if pos(' ',txtgeburtstag.Text) <> 0
    then Showmessage('Alle _ ersetzen!');
end;
Aber wenn ich dieese Prozedur auf das Event OnChange lege dann zeigt er jedes mal die nachricht das noch nihct alle _ ersetzt sind. und ich müsste dann noch wissen wie ich die Fehlermeldung blocken kann.
René
  Mit Zitat antworten Zitat
Benutzerbild von alphaflight83
alphaflight83

Registriert seit: 5. Jun 2008
Ort: Würzburg
148 Beiträge
 
Delphi 12 Athens
 
#6

Re: Fehlermeldung durch EditMaske

  Alt 17. Okt 2008, 13:34
Sorry, musste mal diesen Thread ausgraben *Reanimiert*

Das Problem besteht nun auch bei mir.
Falscheingaben des Datums fange ich brav ab, nur die ValidateEdit Prüfung, bzw. deren EDBEditError bei z.B. Verlassen des Feldes würde ich gerne abfangen.
(Zwecks Einbau eigener Fehlermeldung)
Die Frage wurde aber bisher nicht beantwortet.
Gibt es da keine Lösung oder hat das bisher nur niemand wirklich gebraucht?

Ach ja: Wenns geht, bitte keine Vorschläge grundsätzlich gegen MaskEdits. Die Eingabe an sich ist fein und mich stört nur noch dieses eine Problem.

Danke schon mal für Antworten.

Edit: Try-Except Konstrukte im OnExit Event bringen nichts, die Exception tritt schon vorher auf.
Edit2: Okay, hab mich für die Möglichkeit entschieden, einfach Entf und Backspace in den MaskEdits zu sperren.
Damit hätte sich das Problem erledigt
Make me a sandwich! - What? Make it yourself. - Sudo make me a sandwich! - Okay
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:19 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