Kann ich es machen, das ein Hotkey nur aktiv ist, wenn ich mich in dem Daüfr vorgesehenem Programm befinde, welches Damit gesteuert werden soll?
Da ich das problem habe, das der Hotkey im anderen Programm standartmäßig belegt ist.
Kann ich es machen, das ein Hotkey nur aktiv ist, wenn ich mich in dem Daüfr vorgesehenem Programm befinde, welches Damit gesteuert werden soll?
Da ich das problem habe, das der Hotkey im anderen Programm standartmäßig belegt ist.
Siehe das Beispiel bei HotKeySet in der Hilfe.
peethebee
http://www.autoit.de/dokumentation_…s/HotKeySet.htm
also ich sehe hier leider nichts, womit ich es schaffen könnte das ein zb druck der ZTaste F5 nur ausgewertet wird,
solange ich mich zb in Activ window XY befinden
in Window XDS soll nichts passieren bei druck der selben taste
Versuch's mal so:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$hGui = GUICreate('Hotkey-Test', 400, 300)
$hLabel = GUICtrlCreateLabel('Hotkey aktiv', 20, 20, 160, 20)
GUISetState()
GUIRegisterMsg($WM_ACTIVATE, 'WM_ACTIVATE')
HotKeySet('!q', '_Test')
Do
Until GUIGetMsg() = -3
Func WM_ACTIVATE($hWnd, $Msg, $wParam, $lParam)
If $wParam Then
HotKeySet('!q', '_Test')
Else
HotKeySet('!q')
EndIf
Return $GUI_RUNDEFMSG
EndFunc
Func _Test()
MsgBox(0, 0, 'Test')
EndFunc
OKay das funzt allerdings nur bei Vordefenierten Gui´s was mache ich , wenn ich die Hotkeys Windows Programm abhängig machen will?
Ich verstehe das Problem nicht...
Mit meinem Script sind die Hotkeys doch auf Dein Programm beschränkt!?
Beschreib mal genau, was Du vor hast...
OKay
Also ich habe zb eine Windwoskompennente nehmen wir Thunderbird.
Nur dort soll der Hotkey gehen.
Ein Gui wird es nicht geben direkt.
Ich werde nur ein Programm schreiben wo ich verschiedene Hotkeys defeniere.
Damit will ich mir meinen Büro altag vereinfachen und verschiedene masken aller Shortcut vordefenieren.
Allerdings ebend auch mit Mausdruck etc.
Daher muss ich es auf ein Programm beziehen können. Den Fensternamen davon hätte ich, der ist auch immer gleich.
Dann muss Dein Script halt in einer Schleife testen, ob das jeweilige Programm (Fenster) gerade aktiv ist, und wenn ja, dann den entsprechenden Hotkey aktivieren.
Stichwörter:
- While...WEnd
- If...Then oder bei mehreren Programmen Switch...EndSwitch
- WinGetState
ah okay ja nun machte es klick.
So wie ich aktivieren kann, kann ich auch abrufen danke das hat mein Prob gelöst.