Valid-Event einer Textbox und Toolbar

01/12/2008 - 14:09 von Alexander Schmid | Report spam
Liebe FoxProler

In einer Anwendung dürfen in den Textboxen gewisse Zeichen nicht eingegeben
werden. Um dies zu prüfen, habe ich im Valid-Event in der Klasse, auf der die
Textboxen basieren, eine Prüfung auf unerlaubte Zeichen eingebaut. Das klappt
alles auch bestens, solange der Benutzer mit der Maus oder der Tastatur sich
ins nàchste Feld, genauer gesagt, in irgendein Feld innerhalb der Maske
klickt. Klickt er hingegen direkt auf den Speichern-Button des Toolbars,
bleibt die Prüfung aussen vor.
Weder der Valid-, noch der KeyPress-, noch der LostFocus-Event einer Textbox
werden in diesem Fall angesprochen. Mir war bis anhin nie richtig bewusst,
dass eigentlich, wenn ein Toolbar-Objekt angeklickt wird, kein Event einer
dazugehörenden Maske ausgeführt wird. (Ich glaube mich zu erinnern, dass dies
daran liegt, dass in einem solchen Fall, der Focus auf der Maske bleibt.) Da
bleibt mir eigentlich nur übrig, die Eingabeprüfung quasi im Klick-Event des
Speichern-Knopfes der Toolbar abzuhandeln. Oder gibt es noch eine elegantere
Lösung?

Danke im Voraus für jeden Tipp

Alex

P.S. Irgendwie gibt es, wenn man die Navigationselemente direkt in der Maske
platziert, weniger von den oben beschriebenen Problemen. Aber Toolbars
gefallen mir besser.
 

Lesen sie die antworten

#1 Olaf Doschke
01/12/2008 - 16:25 | Warnen spam
verkürzt müßte Dein Save.Click() so aussehen

IF VARTYPE(_screen.ActiveControl)="O"
_screen.ActiveControl.Setfocus()
ENDIF

Die Idee ist, dem aktiven Control den Focus zu geben,
was den ganzen Zyklus von Valid,Lostfocus etc. aufruft.

Wenn das aktie Control ein Grid ist, muß das ganze
entsprechend anders laufen, aber das ist die Grundidee.

Tschüß, Olaf.

Ähnliche fragen