nextcontrol dynamisch setzen

12. Januar 2007 16:06

Hallo,

ich möchte gern in einer Listform die Sprungreihenfolge je nach Mandant, unter dem gearbeitet wird, anders setzen.
Kann man dazu eventuell das Property NextControl programmgesteuert setzen?
Oder gibt es eine andere Alternative?

Gruß

12. Januar 2007 16:19

Wenn ich mich recht entsinne, geht das nur über den Befehl Control.ACTIVATE

12. Januar 2007 16:26

Natalie hat geschrieben:Wenn ich mich recht entsinne, geht das nur über den Befehl Control.ACTIVATE


Einen anderen Weg kenne ich auch nicht. Leider :-(

12. Januar 2007 16:37

Wo schreibt man das sinnvoller Weise hin?
Wenn ich das in OnDeactivate() des Feldes davor schreibe, kommt es zu einer Endlosrekursion.

12. Januar 2007 16:46

Nein nein, einfach "Zu aktivierendes Feld".ACTIVATE irgendwo im Formular-Quelltext oder auch Control-Trigger, aber nicht in (De)Activate-Trigger selber!

13. Januar 2007 14:25

Wenn etwas in die Felder eingegeben werden muss, dann kannst du z.B. den OnAfterValidate-Trigger verwenden. Dann musst du aber das Feld adressieren, welches in der normalen Reihenfolge VOR dem gewünschten Feld liegt, da nach Ausführen des Triggers erst die normale Bewegung zum nächsten Feld (durch drücken von Tab oder Enter ausgeführt wird.

Beispiel: Wenn du nach dem Ausfüllen der ersten Spalte in die fünfte Spalte springen willst, musst du im OnAfterValidate-Trigger der ersten Spalte Currform.<Name der vierten Spalte>.Activate eingeben.