У меня многоэкранный компьютер:
и я использую WindowPad для перемещения (расстановки) любого окна на экране, и эта программа тоже способна перемещать их между мониторами , нажав WinKey+ Enter.
Проблема в том , что перемещенное окно масштабируется (изменяется) до соответствующего размера нового монитора, как вы можете видеть на двух изображениях ниже. С экрана 1280x1024:
на экран 1920x1200:
Обратите внимание на измененный размер окна консоли Putty SSH . Это не то, чего я хочу.
Перемещение окон без использования мыши чрезвычайно полезно для меня, но я не смог найти практический способ сделать это без изменения размера этого окна. Всплывающее меню
, которое есть в большинстве окон, недействительно, потому что, даже когда я могу перемещать окна, это перемещение слишком медленное (в этом случае я предпочитаю использовать мышь):
WinKey+ Shift+ arrowне работают на моей Windows 7 SP1, не знаю почему.
Идеи приветствуются.
Вам не нужно специальное программное обеспечение
Win+Shift+стрелка влево: переместить окно на монитор слева
Win+Shift+стрелка вправо: переместить окно на монитор справа
Кроме того, Windows-P открывает переключатель дисплея:
Только компьютер — это вариант по умолчанию, и название говорит само за себя.
Дублировать клонирует ваш экран на подключенный дополнительный дисплей, монитор или проектор.
Расширение расширяет рабочий стол, чтобы вы могли освободить место для дополнительных окон.
Проектор только выключает ЖК-дисплей вашего ноутбука и превращает проектор в ваш монитор
Я изменил исходный код WindowPad , чтобы не изменять размер окон при перемещении или смене монитора.
Вот шаги:
Скачайте по ссылке выше и разархивируйте.
Чтобы отключить изменение размера окон при перемещении редактирования \source\WindowPad.ahk
для изменения (Windows Notepad в порядке):
; Move and resize.
WinMove,,, newx, newy, neww, newh
to (обратите внимание на комментарии с ;
характером):
; Move and resize.
; WinMove,,, newx, newy, neww, newh
WinMove,,, newx, newy, w, h
и изменить:
wp_CalcNewSizeAndPosition:
; Calculate desired size.
neww := restore_w != "" ? restore_w : Round(monWidth * widthFactor)
newh := restore_h != "" ? restore_h : Round(monHeight * heightFactor)
to (мы также сохраняем некоторые строки, используя комментарии):
wp_CalcNewSizeAndPosition:
; Calculate desired size.
; neww := restore_w != "" ? restore_w : Round(monWidth * widthFactor)
; newh := restore_h != "" ? restore_h : Round(monHeight * heightFactor)
neww := w
newh := h
\source\WindowPad.ahk
на изменение:; Calculate new size. if (wp_IsResizable()) { w := Round(w*(mdw/msw)) h := Round(h*(mdh/msh)) }
к:
; Calculate new size.
if (wp_IsResizable()) {
; w := Round(w*(mdw/msw))
; h := Round(h*(mdh/msh))
w := w
h := h
}
(довольно нелепое изменение, но оно помогает понять смысл модификации)
Теперь у вас есть файл .ahk, который вы можете запустить, если у вас установлен AutoHotKey . Или скомпилируйте его.exe
с помощью той же программы ( Convert .ahk to .exe
).
И небольшое улучшение: вот эти строчки мешают поставить в трей свою иконку (ее можно выбрать при компиляции .ahk
файла, но она там не появится):
.
if A_IsCompiled ; Load icons from my custom WindowPad.exe.
{
; Default icon is 32x32, so doesn't look good in the tray.
Menu, Tray, Icon, %A_ScriptFullPath%, 2
}
else if (A_LineFile = A_ScriptFullPath)
{ ; Set the tray icon, but only if not included in some other script.
wp_SetTrayIcon(true)
; Use OnMessage to catch "Suspend Hotkeys" or "Pause Script"
; so the "disabled" icon can be used.
OnMessage(0x111, "WM_COMMAND")
}
поэтому просто прокомментируйте их все:
; if A_IsCompiled ; Load icons from my custom WindowPad.exe.
; {
; ; Default icon is 32x32, so doesn't look good in the tray.
; Menu, Tray, Icon, %A_ScriptFullPath%, 2
; }
; else if (A_LineFile = A_ScriptFullPath)
; { ; Set the tray icon, but only if not included in some other script.
; wp_SetTrayIcon(true)
; ; Use OnMessage to catch "Suspend Hotkeys" or "Pause Script"
; ; so the "disabled" icon can be used.
; OnMessage(0x111, "WM_COMMAND")
; }
и теперь вы можете скомпилировать свой файл .ahk
, .exe
который будет иметь предпочитаемый значок для файла и для значка в трее (каждый значок AutoHotKey в трее имеет один и тот же зеленый цвет H
, если он не указан).
Моя компиляция в .exe работает фантастически. Теперь WindowPad — лучшая программа, которую я когда-либо видел, для перемещения и расположения окон даже на нескольких экранах.
Пожалуйста, сообщайте об ошибках, если вы их найдете.
Вы также можете использовать UltraMon (бесплатный, Windows, графический интерфейс), чтобы настроить сочетание клавиш для перемещения окна на следующий или предыдущий монитор.
Как сказал Ян, в Windows 7 есть несколько встроенных ярлыков, которые я не использую, потому что я привязываюсь Winк щелчку левой кнопкой мыши:
Как и у вас, у меня 6 мониторов, поэтому мне также нужно переместить окно вниз/вверх в моем случае между мониторами 3 и 4 и между мониторами 5 и 6:
Я видел, что у AHK могут быть некоторые функции для него, например WindowPad и WindowPadX , но мне непонятно, как установить такое сочетание клавиш, поэтому некоторое время назад я задал вопрос здесь: Переместить окно на нижний/верхний монитор с помощью ярлык в винде
Тимрик
Сопалахо де Аррьерес
Сопалахо де Аррьерес
.exe
файлы в репозитории форумов AutoHotKey, если буду знать, как это сделать. Я полагаю, у SuperUser нет хранилища для файлов, поэтому я не могу думать о другом.Тимрик