Moin-Moin.
Ich möchte, das die ENTER-Taste auf dem Numlock (?) die selbe Funktion macht wie die Tab-Taste.
Hat das schon mal jemand gemacht?
Gruß, Crazy-A.
Moin-Moin.
Ich möchte, das die ENTER-Taste auf dem Numlock (?) die selbe Funktion macht wie die Tab-Taste.
Hat das schon mal jemand gemacht?
Gruß, Crazy-A.
vieleicht könnte man das so irgendwie lösen
_ispressed ( enter )
Send ( tab)
das mag nicht.
Hatte das hier gedacht, aber auch negativ:
If _IsPressed("{NUMPADENTER}") Then
send("{TAB}")
EndIf
Crazy-A.
Hallo
Ihr immer mit eurem IsPressed
Der Vorteil von IsPressed ist, dass er nur sagt ob gedrückt wurde oder nicht
Bei HotKeySet wird die Taste abgefangen bevor sie Windows erreicht.
Also einfach
HotKeySet("{NUMPADENTER}","_tab")
While 1
sleep(5000)
wend
Func _tab()
Send("{tab}")
endfunc
Nicht getestet
Mfg Spider
Hallo GTA.
Nee, will nicht !!!
Macht dennoch ENTER.
Crazy-A.
Whups, sehe in der Hilfe grad das hier:
Function HotKeySetThe following hotkeys cannot be set:
...
NumPad's Enter Key
Instead, use {Enter} which captures both Enter keys on the keyboard.
...
Mfg Spider
@GTA.
Deshalb dachte ich ja, das es ein kleines Hitnertürchen gibt, das nur die richtig guten (die Besten) kennen.
Immer wenn ich nämlich Beträge eingebe, muß ich die Hand vom Nummernblock nehmen um zum nächsten Feld zu kommen.
Aber sag mal, wo wir gerade dabei sind. Tausche das Kommaauf dem Numlockblock mit einem mathematiaschem Punkt?
I. d. S.
Crazy-A.
Whups, sehe in der Hilfe grad das hier:
Function HotKeySetThe following hotkeys cannot be set:
...
NumPad's Enter Key
Instead, use {Enter} which captures both Enter keys on the keyboard.
...Mfg Spider
Hi Lina,
ist vllt. nicht die eleganteste Lösung, weil ich das Komma nicht verhindern kann, sondern anschließend lösche und einen Punkt setze.
Hier schau mal:
#Include <Misc.au3>
While 1
Sleep(250)
If _IsPressed('6E') Then Send('{BS}.')
WEnd
Edit:
Habs nochmal getestet, _IsPressed() ist sehr unzuverlässig und läßt einige Tastaturanschläge durch. Verwende folgende Variante:
Global $dll = DllOpen("user32.dll")
[/autoit] [autoit][/autoit] [autoit]While 1
Sleep(100)
If _IsNumCommaPressed($dll) Then Send('{BS}.')
WEnd
DllClose($dll)
Func _IsNumCommaPressed($dll)
Local $ret, $i
For $i = 1 To 256
$ret = DllCall($dll, "int", "GetAsyncKeyState", "int", '0x' & Hex($i, 2))
If $ret[0] <> 0 And Hex($i, 2) = '6E' Then Return True
Next
Return False
EndFunc
BugFix .
Also die Version ohne "_IsPressed()" ist echt genial.
Leicht in evtl. bestehende Scripte einzubauen und echt stabi.
Also das macht mal 99 Punkte.
LG, Crazy-A.
Hab noch 'ne andre Möglichkeit gefunden.
Hier in Endlosschleife:
#Include <WinAPI.au3>
$iKey = 110
While True
Sleep(100)
If _WinAPI_GetAsyncKeyState($iKey) Then Send('{BS}.')
WEnd
Hallo!
Man kann die Taste unter Windows auch wirklich umbelegen. Dann ist Ruhe :D.
Gibt sogar ein MS-Tool dafür, habe den Namen gerade nicht im Kopf, aber sollte sich finden lassen :).
peethebee
Hm, hab da was gefunden wasvielleicht weiter hilft.
http://www.winfaq.de/faq_html/Conte…p?h=tip1575.htm
Hi Raupi, Danke für den Link. Werde das mal in eine UDF packen.
Ist aber auch nur ein Notnagel, da meist die Tastenfunktion nur temporär/programmabhängig geändert werden soll. Der Regwert muß also ständig geswitcht werden.
Ich bastel grad noch an der Variante, das Tastenevent abzufangen und mit einem neuen Wert zu belegen. Will aber noch nicht richtig.
Hier mal noch, basierend auf dem GetAsyncKeyState-Aufruf, eine stabile _IsPressed() - Version. Syntax ist mit dieser identisch - also Abfrage String-HexKey.
[autoit]Func _IsPressedAsync($sHexKey)
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
EndFunc
Hallo Peethebee.
Ich wollte hier nicht für Unruhe sorgen.
Ich bitte den Beitrag zu entschuldigen. Aber BugFix hat bereits eine Lsg. gepostet, die doch sehr gut arbeitet.
LG,
Crazy-A.
Hallo!
Man kann die Taste unter Windows auch wirklich umbelegen. Dann ist Ruhe :D.
Gibt sogar ein MS-Tool dafür, habe den Namen gerade nicht im Kopf, aber sollte sich finden lassen :).peethebee
"Dann ist Ruhe :D" war bezogen darauf, dass es dann global geändert wäre und keine zusätzliche Last erzeugt ;).
peethebee
Du meinst, das so. Ich hatte es ganz anders verstanden.
Freu, das es dann okay war das Posting.
LG, Crazy-A.