Wie kann ich mit Autoit / Autohotkey das zweistufige Makroverhalten von Visual Studios „Strg-K, C“ nachahmen?
-
03-07-2019 - |
Frage
Ich versuche aufzustellen Autohotkey Makros für einige gängige Aufgaben, und ich möchte Strg-K aktiviert "Makromodus"; Im Makro -Modus wird das Drücken bestimmter Tasten ein Makro ausgeführt und dann den Makromodus deaktiviert, und jede andere Taste deaktiviert nur den Makro -Modus.
Beispiel - Beim Eingeben eines Dateinamens möchte ich das heutige Datum durch Tippen einfügen können Strg-K, dann drücken D.
Hat jemand ein gutes Beispiel für ein staatliches Autohotkey -Skript, das sich so verhält?
Lösung
Dieses Autohotkey -Skript, wenn Sie drücken Strg+k, Warten Sie darauf, dass Sie eine Taste drücken und wenn Sie drücken d, Es wird das aktuelle Datum eingegeben.
^k::
Input Key, L1
FormatTime, Time, , yyyy-MM-dd
if Key = d
Send %Time%
return
Andere Tipps
Eine geringfügige Variation der akzeptierten Antwort - das habe ich verwendet. Ich erfasse Strg+Lwin (linke Windows-Schlüssel), damit es nicht mit integrierten Strg-K-Verknüpfungen in Konflikt steht.
; Capture Ctrl+Left Windows Key
^LWin::
; Show traytip including shortcut keys
TrayTip, Ctrl-Win pressed - waiting for second key..., t: current time`nd: current date, 1, 1
; Capture next string input (i.e. next key)
Input, Key, L1
; Call TrayTip with no arguments to remove currently-visible traytip
TrayTip
if Key = d
{
FormatTime, Date, , yyyyMMdd
SendInput %Date%
}
else if Key = t
{
FormatTime, Time, , hhmmss
SendInput %Time%
}
return