Tastatureingabe ändern

Soulhunta

Mitglied
Hallo, ich wollte mal fragen ob es möglich ist die Tastatureingabe innerhalb einer "Form" von unserer Europäischen "Qwertz" in die Amerikanische "Qwery" zu ändern...

Als Beispiel, ich habe eine Textbox und dort gebe ich auf unserer normalen Tastatur ein "Z" ein, ich will das mein Programm dieses als "Y" (was ja auf der Amerikanischen Tastatur der fall ist) interpretiert.

Ich hoffe ich konnte mich verständlich ausdrücken

Vielen Dank
 
Du könntest im KeyPress-Ereignis überprüfen, ob die Taste ein Z ist und wenn ja, dann "KeyAscii" in ein Y wandeln:
Code:
Private Sub Text1_KeyPress(KeyAscii As Integer)
Select Case VBA.Chr$(KeyAscii)
    Case "Z"
        'Großes Z in großes Y wandeln:
        KeyAscii = VBA.Asc("Y")
    Case "z"
        'kleines Z in kleines Y wandeln:
        KeyAscii = VBA.Asc("y")
    'usw...
End Select
End Sub
 
Ich halte von der Lösung nicht viel. Da die Interpertationen der Tastenanschläge vom Systemtreiber übernommen werden. Solche Sachen sollten im Betriebssystem für die Ländereininstellungen und Tastatureinstellungen vom Benutzer vorgenommen werden und nicht vom Programmierer fest verdrahtet werden.
 
Zurück