Fokuswechsel nach Abbruch
-
Hai.
Ich möchte gern folgende Verarbeitung innerhalb einer Dialogmaske realisieren. Es soll beim Verlassen eines Feldes (Textfeld oder Combobox ist egal) geprüft werden, ob der eingegebene Wert gültig ist. Das ist soweit nicht schwer :). Dafür prüfe ich im Exit-Ereignis des Feldes, ob die Eingabe erlaubt ist oder nicht. Wenn nein, setzte ich den Fokus wieder in das Feld. Wenn ja, wechselt der Fokus in das nächste Feld. Nun möchte ich aber, dass die Prüfung nicht zieht, wenn der Abbruchbutton gedrückt wurde. Das habe ich mit der Eigenschaft "ActiveControl" gemacht. Der Abbruchbutton löst dann eine Messagebox aus, mit der Frage "Wollen Sie die Eingabe rückgängig machen". Wenn der Bediener den Ja-Button drückt, werden alle alten Werte in die Maske geschrieben. Bei Nein bleibt der Inhalt unverändert. Allerdings steht der Fokus dann auf dem Abbruchbutton ohne das die Prüfung in meinem Feld durchgeführt wurde. Und das ist schlecht.
Ich möchte, dass bei Nein der Fokus wieder in das zu überprüfende Feld wechselt, damit die Prüfung durchgeführt werden kann. Gibt es eine Eigenschaft, die einem verrät, aus welchem Feld der Fokus kommt?
Ich hoffe ich habe alles einigermaßen verständlich beschrieben
.Gruß
Dirk
-
Hallo,
Ich kenne keine solche Eigenschaft. Du kannst dir doch aber eine Membervariable deiner Form vom Typ TWinControl anlegen in der du im OnExit des jeweiligen Controls den Pointer darauf übergibst. Dann brauchst du ja nur noch SetFocus aufzurufen.
-
Ich muss ja im OnClick-Ereignis des Abbruchbuttons den Fokus wieder auf das zu überprüfende Feld setzen.
Ganz habe ich Deinen Vorschlag nicht verstanden. Kannst Du mir vielleicht ein kleines Beispiel geben.
Danke und Gruß
Dirk
-
Ich hasse, es wenn ein und dieselbe Frage gleich in mehreren Foren gestellt wird. Was vesprichst Du Dir davon? Das es schneller geht? Das sich mehr Leute mit Deinem eminent wichtigen Problem auseinander setzen?
Die Frage ist in zwei Foren völlig ausreichend beantwortet. Wenn Du Antworten nicht verstehst, fehlen Dir wohl noch ein paar Grundkenntnisse.
-
Maul doch nicht gleich so rum. Ich wusste ja nicht, dass mein Problem gleich beantwortet wird. Und entschuldige, dass mir noch ein paar Grundkenntnisse fehlen

-
d.ausstroit schrieb:
Maul doch nicht gleich so rum. Ich wusste ja nicht, dass mein Problem gleich beantwortet wird.
Ach und deswegen postest Du, im Minutenabstand, in diversen Foren???
d.ausstroit schrieb:
Und entschuldige, dass mir noch ein paar Grundkenntnisse fehlen

Ja, dann verschwende nicht so viel Zeit auf das posten, sondern beschränke Dich auf ein Forum und verwende die restliche Zeit um die Lücken zu schließen.
-
Ey, was geht denn hier ab. So was unfreundliches habe ich ja noch nie erlebt in einem Forum. Ich dachte in Foren wird einem geholfen, wenn man nicht immer alles gleich versteht. Ich habe lediglich in zwei Foren die gleiche Frage gestellt, weil ich schnell eine Lösung brauche. Wenn ich diese Lösung nicht gleich verstehe und noch einmal nach einem Beispiel frage, ist das doch wohl nicht zu viel verlangt
.Vielleicht kann mir trotzdem jemand ein Beispiel geben, damit ich mein Problem in den Griff bekomme. Man traut sich ja kaum noch was zu fragen, bei solchen Mitgliedern.
Und Joe_M, Du solltest Deinen PC mal ausschalten und einmal um den Block laufen, dass beruhigt die Nerven.
Gruß Dirk