Альтернатива alt-tab
Давайте рассмотрим следующий сценарий: на моем настольном компьютере у меня открыто два приложения, браузер и текстовый редактор (половина размера дисплея для каждого приложения).
Как я могу переключаться между этими двумя приложениями, но без использования alt-tab или win-tab или щелчков мышью?
Если по умолчанию ничего не построено на Windows XP / Vista или 7, как я могу сделать это программно с помощью C++? Например, нажмите alt+l(или alt+1), чтобы активировать левое окно, и alt+r(alt+2), чтобы активировать правое окно.
Спасибо
4 ответа
Создайте скрипт AutoHotKey, чтобы получить эти сочетания клавиш и активировать нужную программу.
Если у вас есть ручки для этих окон, вы можете использовать SetForegroundWindow
,
Вы можете получить дескриптор окна, если вы знаете заголовок с FindWindow
, В этой статье объясняется, как получить дескриптор окна, если вы частично знаете заголовок (не точное совпадение), хотя я никогда не пробовал.
Для ваших горячих клавиш, посмотрите на SetWindowsHookEx
с WH_KEYBOARD
как тип крючка. Вы сделаете KeyboardProc
, который Windows будет вызывать при нажатии клавиш. Здесь вы можете захватить ваши конкретные комбинации клавиш и активировать определенные окна.
Тем не менее, Windows предоставляет горячие клавиши для вас, как указано в других ответах.
В Windows 7 вы можете переключиться на любой из первых десяти элементов на панели задач (независимо от того, запущен он или нет), нажав Windows+(1..0). Вы можете перетащить элементы панели задач вокруг, чтобы изменить порядок.