Я искал способ получить эту функциональность, но пока безуспешно. По сути, все, что я пытаюсь сделать, это иметь скрипт в AutoHotKey или другой программе, который будет приостанавливать любой медиафайл, который я воспроизводлю (VLC player, YouTube, Twitch, что угодно), если я переключусь на другой виртуальный рабочий стол с помощью стандартного сочетания клавиш (Ctrl + Win + Arrow). Я бы просто хотел, чтобы скрипт приостанавливал медиафайл, я бы не хотел, чтобы переключатель возобновлял воспроизведение, если я вернусь на этот конкретный рабочий стол.
Я новичок в использовании скриптов AutoHotKey и всего, что касается Windows Poweruser, так что если у кого-то есть ресурсы, на которые можно сослаться, чтобы узнать, как написать что-то подобное, я буду признателен!
Редактировать: После использования Руководства для начинающих по AHK, которое мне дали очень отзывчивые люди здесь, а также некоторых других ссылок, я смог понять, как это сделать, с помощью одной строки кода в AHK.
~^#Left:: Media_Play_Pause
Все, что он делает, это переключает кнопку воспроизведения медиа, когда я переключаю рабочие столы влево, то есть я могу запустить свое видео на Рабочем столе 2, а затем переключиться на Рабочий стол 1 и автоматически поставить его на паузу. Символ "~" просто позволяет исходной горячей клавише быть отправленной в операционную систему, поэтому я получаю две функции для одной горячей клавиши (в данном случае переключение рабочих столов и воспроизведение/пауза медиа).
Вот еще одна ссылка, которая показалась мне полезной:
https://www.autohotkey.com/board/topic/89267-dual-hotkey-but-keep-original-keys/
решение1
Официальная онлайн-документация AutoHotkey должна охватывать большую часть того, что вам нужно, включая:
И в более общем плане:
AutoHotkey также имеетФорум.
Что касается конкретно вашей проблемы, я бы предложил использовать альтернативное сочетание клавиш в качестве основы, чтобы вы могли отправить Ctrl+Win+Arrow с меньшими потенциальными осложнениями.
Вторая проблема, которую, вероятно, следует рассмотреть, это:
Определение того, какие процессы Windows открыты (например, Firefox, Chrome, VLC)
Отдельное внимание каждому процессу.
Отправка дополнительных нажатий клавиш после того, как процесс будет сфокусирован.
И наконец, переключение рабочих столов.
Хотя AutoHotkey может выполнить все четыре шага выше, камнем преткновения здесь может стать ваш браузер (для YouTube и Twitch). Современные браузеры обычно не объявляют URL активной страницы, насколько мне известно. Теоретически, вы могли бы извлечь это с помощью Python/Selenium (не только AutoHotkey), но более простым решением, вероятно, было бы просто отправить несколько наборов нажатий клавиш в любой браузер, как только он окажется в фокусе.