К большому сожалению, Windows почему-то не предлагает штатные средства для того, чтобы можно было закрепить любое окно поверх остальных. Да, некоторые программы (например, AIMP или VLC) имеют опцию «всегда сверху», доступную через настройки, но таких программ очень мало. Остается решать данную проблему своими силами.
Недостатки софта для закрепления окон
Существует целый ряд софта, как платного, так и бесплатного для того, чтобы закрепить любое окно поверх всех остальных окон в Windows. Наиболее популярными являются:
- DeskPins
- TurboTop
- Microsoft PowerToys
- OnTopper
- PinWin
Однако эти решения имеют недостатки, из-за которых лично я, исходя из своего опыта, не рекомендую ими пользоваться. Например, DeskPins последний раз обновлялась в феврале 2015 года, TurboTop – в 2016. Я пользовался утилитой DeskPins на десятке много лет, пока не столкнулся с тем, что она начала глючить и некорректно себя вести с окнами самых разных программ.
Тогда я перешел на Microsoft PowerToys, которая имеет функцию закрепления любого окна поверх других. Однако это решение я считаю неоптимальным, потому что это все равно как устанавливать Photoshop всего лишь для того, чтобы просто изменить размер одной картинки. Программа PowerToys весит более двухсот мегабайт и помимо «always on top» имеет еще два десятка других возможностей (о них я подробно рассказывал), большинством из которых вы скорее всего никогда не будете пользоваться. Зачем захламлять жесткий диск и замедлять систему лишними трудоемкими процессами, постоянно висящими в памяти?
Оптимальным решением лично я считаю использование утилиты AutoHotkey, про которую я тоже уже рассказывал ранее. Она весит чуть более 3 Мб и позволяет запускать выполнение любых действий в Windows путем нажатия шоткатов. Например, изменить язык раскладки клавиатуры нажатием всего одной клавиши. И всё это доступно бесплатно любому пользователю.
«Always on top» при помощи AutoHotkey
Прямо сейчас я расскажу, как при помощи AutoHotkey можно написать небольшой скрипт, чтобы одним нажатием определенных сочетаний клавиш на клавиатуре закрепить любое открытое окно поверх других.
Итак, для начала надо скачать утилиту AutoHotkey на свой компьютер и установить её (выбирайте для скачивания версию 1.1.).
Создание скрипта
Для создания нового скрипта надо сделать следующие:
- Кликните правой клавишей мыши в любом месте рабочего стола
- Выберите «Создать – AutoHotkey Script»
- Можно присвоить скрипту любое имя либо оставить по умолчанию
Откройте созданный скрипт в любом текстовом редакторе, например Блокноте. Скопируйте и вставьте в него следующую запись:
^SPACE:: Winset, Alwaysontop, , A
Должно получиться вот так:
Сохраните скрипт (CTRL + S) и запустите его двойным кликом мыши. Вы будете знать, что скрипт работает, по соответствующему значку на панели задач.
Проверка работы скрипта
- Запустите любую программу
- Сделайте её окно активным (оно должно быть на переднем плане, поверх всех остальных)
- Нажмите на клавиатуре сочетание клавиш CTRL + Пробел
- Окно будет закреплено поверх всех других окон
- Чтобы открепить окно, снова нажмите CTRL + Пробел
Отныне при помощи указанного сочетания клавиш вы можете нажать настроить любое активное в данный момент окно любой программы таким образом, чтобы оно всегда было сверху.
Ставим скрипт в автозагрузку
Последнее, что нужно сделать – поместить файл созданного нами скрипта в автозагрузку, чтобы он запускался автоматически при каждом старте Windows. Для этого переносим файл в папку C:ПользователиИмяПользователяAppDataRoamingMicrosoftWindowsStart MenuProgramsStartup
Не забудьте включить в проводнике отображение скрытых элементов, чтобы найти указанные выше системные папки.
Краткий FAQ
Сколько памяти потребляет скрипт для закрепления окон?
AutoHotkey очень нетребовательна к ресурсам компьютера и потребляет в фоне очень мало оперативной памяти – чуть более 1 Мб. Данный процесс никак не замедляет работу ПК, поэтому программу можно спокойно использовать даже на самых слабых машинах.
Можно ли дополнить уже имеющийся скрипт AutoHotkey?
Что делать, если вы уже знакомы с программой AutoHotkey и давно пользуетесь каким-либо скриптом? Создавать новый файл скрипта для функции «всегда сверху»? Нет, в этом нет необходимости. Просто дополните уже имеющийся у вас скрипт приведенной выше записью для закрепления окон.
Вот пример того, как выглядит мой файл:
Иными словами, в одном файле вы можете прописать столько разных скриптов сколько нужно — их выполнение не будет конфликтовать друг с другом.
Можно ли изменить сочетание клавиш для расположения поверх других окон?
Если вам не нравится сочетание Ctrl+Space, вы можете задать любые другие клавиши. Для этого рекомендую изучить документацию AutoHotkey по этому вопросу. https://www.autohotkey.com/docs/v1/KeyList.htm