Автоматически размещайте программы в определённом положении на двух мониторах.

Вопрос или проблема

Я использую конфигурацию с двумя мониторами и Windows 10. Я хочу иметь возможность нажимать клавишу и отправлять текущее окно в конкретное закреплённое положение.

По сути, то, что делает этот плагин https://github.com/BarRaider/streamdeck-windowsmover, но этот плагин предназначен для стримдек и у меня его нет.

Итак, скажем, я открываю cmd или музыкальный плеер и нажимаю горячую клавишу, тогда они должны закрепиться на назначенных позициях на втором мониторе.

Я пытаюсь достичь этого с помощью autohotkey, но не могу заставить это работать (используя ChatGPT для генерации кода). Любая помощь в этом отношении будет полезна. Спасибо

Ответ или решение

Для автоматического позиционирования окон программ на втором мониторе в среде Windows 10 с использованием языка программирования AutoHotkey, вам понадобится выполнить несколько шагов. Этот метод позволит вам отправлять активные окна в заданные позиции на втором экране с помощью горячих клавиш. Давайте рассмотрим этот процесс более подробно.

Шаг 1: Установка AutoHotkey

Если у вас еще не установлен AutoHotkey, вам необходимо загрузить последнюю версию с официального сайта и установить ее на ваш компьютер.

Шаг 2: Создание скрипта

После установки AutoHotkey создайте новый текстовый файл с расширением .ahk и откройте его в текстовом редакторе. В этом файле мы будем описывать необходимые команды.

Шаг 3: Написание кода

Для того чтобы перемещать активное окно, вы можете использовать следующий скрипт. В этом примере мы будем перемещать окно на второй монитор в определенное положение (например, в правом верхнем углу):

#Persistent ; Держит скрипт работающим
#NoEnv ; Избегаем использования переменных окружения

; Привязываем горячую клавишу к действию. В данном случае используем Ctrl + Alt + M
^!m::
    ; Получаем информацию о текущем активном окне
    WinGetActiveTitle, activeWindowTitle 

    ; Параметры для координат второго монитора (можно изменить под себя)
    secondMonitorX := 1920  ; X координата (плюс ширина первого монитора, например 1920 пикселей)
    secondMonitorY := 0      ; Y координата (нужное значение по вертикали)

    ; Перемещаем и изменяем размер активного окна
    WinMove, %activeWindowTitle%, , secondMonitorX, secondMonitorY, 800, 600 ; размер может быть изменен

return

Шаг 4: Запуск скрипта

Сохраните изменения в файле и дважды щелкните на созданный скрипт. Теперь, когда вы откроете окно, например, командной строки или музыкального плеера, и нажмете сочетание клавиш Ctrl + Alt + M, активное окно переместится в заданную позицию на втором мониторе.

Шаг 5: Настройка координат

Вам может потребоваться изменить secondMonitorX, secondMonitorY, а также размеры окна в команде WinMove, чтобы они соответствовали вашему конкретному расположению и размерам мониторов. Для этого воспользуйтесь следующими подсказками:

  1. Измерьте разрешение вашего монитора: Если у вас разрешение 1920×1080 для первого монитора и вы используете его в горизонтальной ориентации, второй монитор, скорее всего, будет начинаться с X координаты 1920 (или больше, если применены дополнительные настройки размещения).

  2. Позиция окна: X и Y координаты определяют левый верхний угол окна на экране. В нашем примере secondMonitorY равен 0 — это означает, что окно будет размещено в верхней части. Вы можете задать другую Y координату, чтобы переместить окно вниз.

Заключение

Таким образом, используя AutoHotkey, вы можете эффективно перемещать окна в вашем двойном мониторе под управлением Windows 10. Данная настройка улучшит вашу продуктивность, позволяя быстро организовать рабочее пространство без необходимости вручную перетаскивать окна.

Если у вас есть дополнительные вопросы или потребности в настройках, вы всегда можете обратиться к документации AutoHotkey или сообществу, где много полезной информации по улучшению ваших скриптов.

Оцените материал
Добавить комментарий

Капча загружается...