Alles anzeigenHi,
[autoit]
so kannst du LeftShift und RightShift auseinanderhalten:While 1
[/autoit] [autoit][/autoit] [autoit]
Sleep(20)
If _IsPressedAsync('A0') Then
MsgBox(0, '', 'LeftShift')
ElseIf _IsPressedAsync('A1') Then
MsgBox(0, '', 'RightShift')
ElseIf _IsPressedAsync('51') Then
Exit
EndIf
WEndFunc _IsPressedAsync($sHexKey)
[/autoit]
Local $ret, $i
For $i = 1 To 256
$ret = DllCall("user32.dll", "int", "GetAsyncKeyState", "int", '0x' & Hex($i, 2))
If $ret[0] <> 0 And Hex($i, 2) = $sHexKey Then Return True
Next
Return False
EndFuncnur will ich nicht die beiden tasten auseinander halten sondern die rshift eingabe durch eine l shift eingabe ersetzen da wie gesagt bei meinem programm allles groß geschrieben wird wenn ich rshift drücke
Bug bei verwenden der Shift Taste
-
- [ offen ]
-
XNeoX -
20. Oktober 2008 um 12:29 -
Geschlossen -
Erledigt
-
-
- Offizieller Beitrag
sondern die rshift eingabe durch eine l shift eingabe ersetzen
Ist nicht ohne weiteres möglich. Dazu müßtest du einen Hook verwenden um die Tatstatureingaben abzufangen, zu prüfen und ggf. zu verändern und erst dann im PC weiterzuverarbeiten. Das ist aber auch bei mir nur graue Theorie - damit habe ich mich in AutoIt noch nicht befaßt. -