Как я могу увеличить окно на нескольких мониторах?
Использование AutoHotkey Как связать горячую клавишу, чтобы растянуть/увеличить/развернуть окно на нескольких мониторах, чтобы оно отображало оба дисплея?
Прямо сейчас, я должен сделать это, вручную растягивая окна с помощью мыши. Я знаю, что есть специальные инструменты, которые делают это, но я уже запускаю AutoHotkey script и скорее ограничиваю количество инструментов, которые я продолжаю работать.
Ответы
Ответ 1
Вот как я это сделал, сопоставляя комбинацию Shift + Windows + Up
, чтобы максимизировать окно для всех дисплеев. Это дополняет горячую клавишу Windows 7 Windows + Up
, которая максимизирует выбранное окно.
+#Up::
WinGetActiveTitle, Title
WinRestore, %Title%
SysGet, X1, 76
SysGet, Y1, 77
SysGet, Width, 78
SysGet, Height, 79
WinMove, %Title%,, X1, Y1, Width, Height
return
Ответ 2
Я знаю, что эта ветка немного старая, но это, безусловно, лучший "свободный" способ охватить максимизацию на нескольких мониторах, которые мне удалось найти. Ive использовал его сейчас как для окон 8, так и для 7 64-битных систем, и этот макрос, вероятно, станет частью моего инструментария по умолчанию:) Спасибо, кучи.
И причина, по которой я отправляю сообщения, - это немного изменить его, чтобы восстановить окно обратно до одного размера монитора, так как как только макрос UP запускается, вам придется вручную перетащить окно обратно в один суб- размер монитора при желании. Я добавил в shift + windows + вниз комбо, чтобы это сделать. Вероятно, лучше было бы лучше вспомнить старую позицию в окнах, но я не эксперт authotkey, и это работает для моих целей... (вы также можете изменить "A_ScreenWidth, A_ScreenHeight", чтобы сказать 800, 600 для чего-то меньшего для работы с, и настроить 0,0, чтобы центрировать экран, скажем 300,200)
Используйте компилятор authotkey exe, и у вас есть портативный exe для использования на другом ПК. (т.е. мой офисный компьютер будет запускать exe fine, но мне понадобилась учетная запись администратора для установки полной программы: D)
+#Up::
WinGetActiveTitle, Title
WinRestore, %Title%
SysGet, X1, 76
SysGet, Y1, 77
SysGet, Width, 78
SysGet, Height, 79
WinMove, %Title%,, X1, Y1, Width, Height
return
+#Down::
WinGetActiveTitle, Title
WinRestore, %Title%
WinMove, %Title%,, 0, 0, A_ScreenWidth, A_ScreenHeight
return
Ответ 3
У меня есть два монитора на работе и дома с моей панелью задач слева, поэтому мне нужно было настроить этот script, чтобы обеспечить правильное его перемещение.
+#Up::
WinGetActiveTitle, Title
WinRestore, %Title%
SysGet, Mon1, MonitorWorkArea, 1
SysGet, Mon2, MonitorWorkArea, 2
Monitor1Width := Mon1Right - Mon1Left
Monitor2Width := Mon2Right - Mon2Left
MonitorsWidth := Monitor1Width + Monitor2Width
SysGet, Height, 79
WinMove, %Title%,, %Mon1Left%, %Mon1Top%, %MonitorsWidth%, %Mon2Bottom%
return
+#Down::
WinGetActiveTitle, Title
WinRestore, %Title%
SysGet, Mon2, MonitorWorkArea, 1
Monitor1Width := Mon2Right - Mon2Left
WinMove, %Title%,, %Mon2Left%, %Mon2Top%, %Monitor1Width%, %Mon2Bottom%
return