в произвольном порядке:
yield return
; c # настолько удобен для пользователя, что это безумие и я бы сказал, что это самый важный:
Вы можете создать простую горячую клавишу в Windows, создав ярлык, а затем назначив ему ярлык. Я сделал это для запуска некоторых приложений командной строки с параметрами. Следующая ссылка объясняет использование сочетания клавиш в приложении для отключения звука: Отключить звук
Просто замените Target: и Shortcut Key: в свойствах ярлыка на все, что вам нужно для ваших целей.
Отличный способ сделать это быстро и легко - использовать язык сценариев, ориентированный на макропрограммирование. Мне больше всего нравится AutoIt , как говорится в отрывке из файла справки AutoIt ...
AutoIt изначально был разработан для ПК "развернуть" ситуации, чтобы надежно автоматизировать и настроить тысячи ПК. Со временем это стало мощный язык, поддерживающий сложные выражения, пользовательские функции, петли и все прочее, что ветеран сценаристы этого ожидали.
Написать приложение с горячими клавишами в AutoIt проще простого. Например, допустим, по какой-то причине (чтобы неясно упомянуть) вы хотите, чтобы Alt + Q реагировали как клавиша 7 на цифровой клавиатуре в конкретной ситуации, возможно, поэтому вам не нужно потянуться за ней через клавиатуру. Вот код, который это делает ...
Func _num7()
Send("{numpad7}")
EndFunc
HotKeySet("!{q}","_num7")
While 1
sleep(10)
WEnd
Если это не совсем понятно, очень полезны файл справки AutoIt и форумы . Не говоря уже о (очень) небольшом количестве разработчиков AutoIt, доступных на SO, если у вас возникнут какие-либо вопросы, связанные с AutoIt.
В приведенном выше примере вы можете сказать, что вы хотите, чтобы горячие клавиши были активными только тогда, когда конкретное приложение использовалось, так как чтобы не мешали другие горячие клавиши. Этот код и сделает именно это.
; The comment character in AutoIt is ;
Local $inTargetProg = False
Func _num7()
Send("{numpad7}")
EndFunc
While 1
If WinActive("Target Application Window Title") and Not $inTargetProg Then
HotKeySet("!{q}","_num7") ; binds Alt+Q to the _num7() function
$inWC3 = True
EndIf
If Not WinActive("Target Application Window Title") and $inTargetProg Then
HotKeySet("!{q}") ; UnBind the hotkey when not in use
$inWC3 = False
EndIf
sleep(5)
WEnd
Сочетания клавиш для отдельных процессов, например Ctrl + V обычно определяются в файле ресурсов (.rc) и загружаются через Win32 API LoadAccelerators .
Сочетания клавиш (горячие клавиши) для всей Windows регистрируются с помощью Win32 API RegisterHotKey .
Я использую AutoHotkey на работе большую часть года.
Я просто сохраняю следующий файл в папке автозагрузки Windows.
keyboard_shortcuts.ahk
#SingleInstance force
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
Menu, Tray, Icon, Shell32.dll, 44
; Starting Directory for cmd.exe
EnvGet, HOMEDRIVE, HOMEDRIVE
EnvGet, HOMEPATH, HOMEPATH
#i:: Run, notepad
#f:: Run, firefox
#c:: Run, cmd /k, %HOMEDRIVE%%HOMEPATH%
#m:: Run, mailto:
#b:: Run, mailto:boss@mycompany.com
«# b» означает Winkey + B
«Беги, mailto: boss@mycompany.com » открыть черное письмо на мой бобышка.
#b:: Run, mailto:boss@mycompany.com
Во-первых, добро пожаловать в Stack Overflow!
Во-вторых, это программа за программой. Единственная причина, по которой Ctrl + C или Ctrl + V работает в разных программах, заключается в том, что операционная система поддерживает буфер обмена и многие программы следуют соглашению об использовании Ctrl + C или Ctrl + V . В ваших собственных программах вы можете связывать клавиши как угодно! Для получения дополнительных сведений нам потребуется дополнительная информация о вашей программе.
Если вы хотите создать настоящие горячие клавиши для самой Windows, я не уверен, как (и если вы можете) создавать свои собственные горячие клавиши. Возможно, вы захотите изучить AutoIt , бесплатную программу, которая может делать все, для чего вы, возможно, захотите использовать горячие клавиши,