Wie kann ich mit Autoit / Autohotkey das zweistufige Makroverhalten von Visual Studios „Strg-K, C“ nachahmen?

StackOverflow https://stackoverflow.com/questions/200587

  •  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?

War es hilfreich?

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
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top