Hallo, Jürg, vielen Dank für deine Bemühungen.
Ich habe jetzt etliches ausprobiert, aber mir will das alles nicht logisch
erscheinen.
Wenn EditField.AcceptTabs = False ist und EditField hat den Fokus, dann soll
TAB dazu führen, dass der Fokus auf das nächste Control in der
Tab-Reihenfolge gesetzt wird. Mein EditField ist das letzte Control in der
Reihe, das erste Control wäre das StyleGrid, das das Parent des EditFields
ist.
Das EditField verliert auch den Fokus, aber in der Routine des
KeyDown-Events, in der das EditField zunächst unvisible geschaltet wird, um
es unsichtbar auf dem Grid zu verschieben, wird eine weitere Routine korrekt
aufgerufen, in der das EditField wieder visible geschaltet wird und
(sicherlich doppeltgemoppelt) EditField.SetFocus ausgeführt wird.
Mit den den anderen Tasten funktioniert das auch einwandfrei.
Bei der TAB-Taste verliert sich der Fokus aber irgendwo und ich kann nicht
feststellen, wo er landet. Jedenfalls nicht mehr beim Editfield.
Ich denke, ich werde die TAB-Taste einfach nicht auswerten, die Return-Taste
und die Pfeil-Tasten müssen einfach genügen.
besten Gruß, Christian Hahn.
----- Original Message -----
From: "Juerg Raess" <[email protected]>
To: <[email protected]>
Sent: Thursday, June 11, 2009 9:08 PM
Subject: Re: Tab-Taste im Editfield
im KeyDown-Event eines EditField
Das klappt auch alles gut, nur chr(9) funktioniert nicht richtig.
Kann es sein, dass die Tab-Taste innerhalb des Editfields wie ein
schreibbares Zeichen abgefangen wird?
Und, falls ja, wie kann ich das umgehen?
Hab's mal schnell unter OSX probiert.
Function KeyDown(Key As String) As Boolean
if Asc(Key) = 9 then MsgBox("TAB")
End Function
Die MsgBox erscheint - scheint also kein Problem zu sein...?
Evtl. wird bei anderen Systemen das <tab> abgefangen?
Dann wäre es ein Versuch wert, das Property "AcceptTabs" im EditFeld
auf "true" zu setzen.
Jürg