Kirim Kunci di Autohotkey tanpa rekursi

2

Saya ingin mengganti F1 tapi gunakan BERGESER + F1 sebagai F1

Oke apa artinya ini? Saya ingin mengganti F1 dengan perintah AHK pribadi saya

F1::Run C:\..\foo.exe

Tetapi ada aplikasi di mana saya membutuhkan default F1 kunci. Apakah mungkin untuk melakukan sesuatu seperti

+F1:: Send {F1} 

tanpa rekursi ke hotkey pertama saya?
Dengan kata lain: Kirim kunci tanpa memicu pintasan AHK yang ada.

Saya harap jelas apa yang saya minta! :)

bablewa
sumber

Jawaban:

3

Anda dapat menggunakan #UseHook arahan untuk mencapai ini.

#UseHook, On

F1::    
    ; Your code...
    msgBox, Code!
return

+F1::Send, {F1}

Secara default, hotkey yang menggunakan kait keyboard tidak dapat dipicu melalui perintah Kirim.

Anda dapat membaca lebih lanjut tentang apa yang dilakukannya di sini: http://ahkscript.org/docs/commands/_UseHook.htm

Jika Anda hanya ingin efek ini pada tombol tertentu, Anda dapat menghilangkannya #UseHook dan sebaliknya awali kunci Anda dengan a $ simbol.

Anda dapat membaca lebih lanjut tentang awalan dolar di sini: http://ahkscript.org/docs/Hotkeys.htm#prefixdollar

$F1::    
    ; Your code...
    msgBox, Code!
return

+F1::Send, {F1}
Sidola
sumber
Ya, bekerja seperti pesona. Terima kasih!
bablewa
4
Awali hotkey Anda dengan $ adalah cara yang kurang drastis untuk melakukan hal yang sama. ahkscript.org/docs/Hotkeys.htm#prefixdollar
Dane
@Dane Poin bagus, saya akan menambahkan itu ke jawabannya!
Sidola