Alt-Tab

Сочетание клавиш для переключения окон без использования мыши

Alt+Tab — это общее название сочетания клавиш , которое было в Microsoft Windows с Windows 1.0 (1985). Это сочетание клавиш переключает между окнами уровня приложений без использования мыши; отсюда его название Task Switcher ( Flip в Windows Vista ).

Alt+ Tab ↹упорядочивает окна по последним использованным , таким образом, повторные нажатия клавиш + переключают между двумя последними задачами. Его также можно использовать попеременно между полноразмерным окном и рабочим столом. Оконная среда поддерживает Z- список окон верхнего уровня (задач) с последними использованными задачами спереди и рабочим столом внизу, поэтому последние использованные задачи можно переключить на самые быстрые.AltTab ↹

Комбинация клавиш + также присутствует в других операционных системах и средах рабочего стола , таких как KDE , Xfce и GNOME . В iOS и macOS есть схожая функциональность при нажатии +, но она переключает приложения, а не окна .AltTab ↹CommandTab ↹

Поведение

Использование клавиши-модификатора при использовании + отличается от типичного использования клавиши-модификатора следующим:AltAltTab ↹

  • Существует разница в поведении, когда пользователь отпускает и снова нажимает кнопку «+» , по сравнению с продолжительным удерживанием при повторном нажатии.AltAltTab ↹AltTab ↹
  • Отпускание кнопки приводит к немедленному эффекту: переключатель задач закрывается и происходит переключение на выбранную задачу.Alt

В поведении + есть много тонкостей , и они в основном остаются неизменными на протяжении многих лет.AltTab ↹

Поведение подчиняется следующим правилам:

  • Если открыто более одного окна, список задач появляется сразу после нажатия и удержания клавиши .Tab ↹Alt
  • Список задач остается открытым до тех пор, пока не будет выпущен.Alt
  • Tab ↹перемещает курсор вперед по списку; + перемещает его назад.⇧ ShiftTab ↹
  • Tab ↹или + будет автоматически повторяться при удержании (полезно, если окон много).⇧ ShiftTab ↹
  • При первом нажатии клавиши или + курсор выбора устанавливается на окно, следующее непосредственно за активным или непосредственно предшествующее ему.Tab ↹⇧ ShiftTab ↹
  • Если над активным окном нет окон самого верхнего уровня , начальный знак + переносит курсор в конец списка.⇧ ShiftTab ↹
  • Щелчок мышью по значку задачи в окне задач переключает на эту задачу (не работает в Windows XP и более ранних версиях).
  • Нажатие или щелчок мыши за пределами окна задач, когда кнопка все еще нажата, отменяет переключение.EscAlt
  • Окна перечислены в порядке Z.
  • Все окна, которые «всегда сверху», помещаются в начало последовательности Z-порядка , за ними следуют текущее окно и окна, расположенные под ним.
  • Рабочий стол получает окно, как будто это было окно верхнего уровня. Это больше не работает в Windows 10.
  • Переключение на окно перемещает его в начало Z-порядка , за исключением окон «всегда поверх остальных», которые остаются наверху и в начале списка.
  • Когда окно переключателя задач + неактивно, + помещает активное окно в самый низ Z-порядка . В Windows 8 поведение изменилось: окно будет перемещено на один уровень вниз по Z-порядку вместо того, чтобы перейти в конец.AltTab ↹AltEsc
  • Alt+ ⇧ Shift+ Escэквивалентно одному + +, за исключением того, что свернутые окна выбираются без восстановления.Alt⇧ ShiftTab ↹
  • Сворачивание окна также перемещает его в конец Z-порядка так же, как и + .AltEsc

Правила имеют следующие последствия:

  • При отсутствии окон «всегда поверх остальных», таких как Диспетчер задач, нажатие , нажатие , отпускание и отпускание (типичный способ использования модификаторов клавиатуры) всегда будет переключать между двумя последними задачами.AltTab ↹Tab ↹Alt
  • Alt+ ⇧ Shift+ Tab ↹может восстановить последнее свернутое окно. (Если есть окна «всегда поверх всех», вместо них будет выбрано самое нижнее из них.)
  • Нажатие + - (две вкладки с постоянным нажатием) выполняет то же самое быстрое переключение вперед и назад, но между тремя программами. Любое количество нажатий может быть использовано для достижения этого с любым количеством окон.AltTab ↹Tab ↹AltTab ↹

При первоначальной активации списка задач нажатием + список заполняется в следующем порядке:AltTab ↹

  • Любые окна верхнего уровня «всегда поверх остальных» в соответствии с Z-порядком , спереди назад.
  • Все обычные окна верхнего уровня в соответствии с Z-порядком , спереди назад.

Список задач не меняет порядок, пока он открыт, но порядок задач может меняться между вызовами списка задач.

Windows Vista изменила поведение по умолчанию [1] (в большинстве установок по умолчанию) с помощью интерфейса Flip. Шесть последних использованных элементов в порядке Flip работают так, как описано, затем оставшиеся окна сортируются в алфавитном порядке по пути к приложению (и опционально группируются в зависимости от настройки «группировать похожие кнопки панели задач», которая включена по умолчанию).

Windows 10 удалила рабочий стол из списка задач.

Наглядные примеры

Окна можно разделить на две категории: «всегда поверх всех» и обычные. Когда переключается задача, она перемещается в начало своей категории. Для следующего примера предположим, что нет окон «всегда поверх всех». Пусть A — заголовок текущего окна. Удерживайте Alt и нажмите и отпустите Tab один раз, оставив Alt нажатым. Появится список окон. A гарантированно будет первым в списке. Предположим, что полный список — AWZEUBC . Курсор выбора изначально будет на W . Предположим, что мы хотим переключиться на окно U . Не отпуская Alt, нажмите Tab еще три раза, а затем отпустите Alt. Затем удерживайте Alt и нажмите и отпустите Tab один раз, оставив Alt нажатым. Теперь список окон будет показывать UAWZEBC . Затем перейдите к E и отпустите Alt, выбрав окно E . Нажмите и удерживайте Alt и нажмите и отпустите Tab один раз, оставив Alt нажатым. Теперь список окон будет показывать EUAWZBC . Обратите внимание, что окна, на которые переключались с помощью + ( E , U , A ), расположены в порядке того, как давно они переключались. Теперь перейдите с помощью Tab к A и отпустите Alt. Нажмите и удерживайте Alt и отпустите Tab, оставив Alt нажатым. В списке окон отобразится AEUWZBC . Эффект этого поведения последнего использования заключается в том, что для возврата к последней задаче Tab нажимается один раз, для второй по времени задачи Tab нажимается дважды и так далее для всех задач. Приоритет окна с точки зрения доступности + определяется тем, как давно оно использовалось. Если A теперь свернуто, список станет EUWZBCA , а если свернуто Z , список станет EUWBCAZ . Таким образом, сворачивание окна имитирует эффект неиспользования его в течение длительного времени.AltTab ↹AltTab ↹

Обычное чередование двух последних задач (использование быстрого + с немедленным отпусканием всех клавиш) — это как раз частный случай вышеописанного поведения. Предположим, что окна — это ABC , и мы хотим чередовать A и B. Удерживайте Alt, нажимая и отпуская Tab; продолжайте удерживать Alt. Список покажет ABC , а курсор изначально будет над B. Когда Alt будет отпущен , будет выбран B , Tab был нажат всего 1 раз, и не было необходимости обращать внимание на курсор выбора задачи. Снова нажмите и отпустите Tab, удерживая Alt. Список покажет BAC , а курсор изначально будет над A. Когда Alt будет отпущен, мы переключимся обратно на A. Отображая список снова, порядок вернулся к ABC , и эта последовательность может повториться. При внимательном рассмотрении, в процессе ввода + и быстрого отпускания обеих клавиш, можно заметить, что окно списка задач мерцает в течение доли секунды, поэтому . Если пользователь переключался между 3 приложениями и хочет избавиться от одного из них, свернув его, одно из оставшихся будет сверху сразу после свертки, и обычно + будет попеременно между 2 оставшимися окнами. Если программа не перемещается в конец списка при свертывании, нажатие + один раз вернет свернутое окно. Такие сбои могут привести к бешеной перестановке списка + с помощью нескольких последовательностей + - - ... для компенсации неправильного поведения программы. Алгоритм этой перестановки становится интуитивно понятным после длительного использования. Если пользователь пытается переключиться на приложение с помощью + , но приложение не обновляет свое место в z-порядке (например, если его оконная процедура зависла), то при следующем вызове + курсор выбора задачи может изначально указывать неожиданно далеко в список значков, сразу за рассматриваемым приложением, которое не будет перемещено в начало списка.AltTab ↹AltTab ↹AltTab ↹AltTab ↹AltTab ↹AltTab ↹Tab ↹Tab ↹AltTab ↹AltTab ↹

Приложения имеют некоторое право голоса в том, где они располагаются в порядке + . Список окон изменяется путем создания и уничтожения окон, программного скрытия, показа, подъема и опускания окон, а также изменения z-порядка окон . [2]AltTab ↹

Порядок списка + соответствует непосредственно z-порядку, как только окна были отсортированы в соответствии со статусом «всегда поверх». Alt-Shift-Esc эквивалентно одному Alt-Shift-Tab, за исключением того, что минимизированные окна выбираются без отображения. [3]AltTab ↹

Проблемы и хаки, характерные для Windows

Alt+ Tab ↹работает, даже если Windows Explorer больше не запущен. В Windows NT 3.51 и более ранних версиях + управляется CSRSS (Client/Server Runtime Subsystem). В Windows NT 4.0 и более поздних версиях он управляется драйвером оконной системы режима ядра (win32k.sys). [4] Он работает, даже если + + и + + ( Task Manager ) (которые управляются Winlogon ) не управляются. [5]AltTab ↹CtrlAltDelCtrl⇧ ShiftEsc

Alt+ Tab ↹может быть перехвачен (или эффективно отключен) с помощью низкоуровневого хука клавиатуры. [6] Такой метод используется такими приложениями, как средство просмотра виртуальных сетевых вычислений (VNC), для передачи нажатий клавиш + на удаленный рабочий стол, когда окно VNC активно.AltTab ↹

В Windows XP Tweak UI PowerToy [7] может настраивать количество строк и столбцов в окне списка задач, или это можно сделать с помощью редактирования реестра. [8] Это полезно, если окон так много, что список может растянуться на несколько страниц.

Другой Microsoft PowerToy, + Replacement , [7] доступен для Windows XP, который отображает снимок экрана каждого приложения в списке задач, а не только его значок, и позволяет пользователю использовать мышь для выбора нужного приложения. Более продвинутая версия этой функции, называемая Windows Flip, встроена в Windows Vista .AltTab ↹

Также доступен ряд сторонних инструментов, похожих на + Replacement, которые добавляют дополнительные функции к + .AltTab ↹AltTab ↹

Кроме того, Windows Vista и Windows 7 позволяют пользователю перемещаться по меню «+» с помощью мыши или клавиш со стрелками.AltTab ↹

Когда включена тема Aero Glass, Windows Vista также предлагает 3D-вид самих окон, который анимируется по мере того, как пользователь прокручивает его. Поведение очень похоже на + и вызывается удержанием клавиши вместо нажатия . Пока этот вид виден, окна можно выбирать и делать активными, щелкая по ним мышью, а список можно прокручивать вперед или назад с помощью колеса прокрутки мыши.AltTab ↹⊞ WinAltTab ↹

Если в системе только одно окно, Windows вообще не отображает диалоговое окно выбора при нажатии + ; последовательность клавиш просто восстановит или передаст фокус этому окну в случае, если оно свернуто или не сфокусировано. Это означает, что в Windows 10 + больше не функционирует как способ переключения из полноэкранного приложения, поскольку рабочий стол больше не является окном.AltTab ↹AltTab ↹

Если пользователь предпочитает более мелкие значки XP, а не более крупные значки-миниатюры Vista, он может изменить функциональность следующим образом:

  • Пуск → Компьютер
  • Нажмите кнопку «Свойства системы» (на панели инструментов под панелью инструментов Файл | Правка).
  • Выберите «Дополнительные параметры системы» (в группе «Задачи» в левом столбце); откроется диалоговое окно «Свойства системы», в котором должна быть вкладка «Дополнительно».
  • Нажмите кнопку «Настройки» в разделе «Производительность». Снимите флажок «Включить композицию рабочего стола» (третий флажок сверху в списке «Пользовательский»).
  • Нажмите ОК.

Пользователь также может остановить процесс Dwm.exe через диспетчер задач Windows .

В Windows 7+ после задержки в одну секунду немедленно отображает полноразмерное окно приложения каждый раз, когда меняется положение курсора, скрывая все остальные окна. Это часть функции Aero Peek, новой в Windows 7. Это поведение можно отключить вместе с Aero Peek: Панель управления - Сведения о производительности и инструменты - Настройка визуальных эффектов - снимите флажок Включить Aero Peek.AltTab ↹

Задержку можно настроить, задав значение LivePreview_ms в разделе реестра HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\AltTab.

Некоторые пользователи сообщают, что диалоговое окно переключателя не остается наверху [9] [10] во время отображения, но можно перемещаться по этому диалоговому окну с помощью мыши, даже если оно полностью перекрыто каким-либо окном. Сообщается, что эта ошибка связана с профилем пользователя. Некоторые профили пользователей на одном компьютере могут столкнуться с этой ошибкой, некоторые — нет. Как было обнаружено, проблема иногда вызвана системой гаджетов рабочего стола. После завершения процесса sidebar.exe (в котором размещены гаджеты) проблема исчезает. После перезапуска боковой панели проблема появляется снова. Эта ошибка также возникает, когда запущен ipoint.exe, драйвер мыши Microsoft Intellipoint. Сообщалось также о других программах, вызывающих такое поведение. [11]

Фактическая причина возникновения этой проблемы заключается в том, что [всегда поверх всех окон нулевого размера в точке (0,0)] заставляет Windows Explorer неправильно устанавливать свойства alt-tab. Решение — загрузить и запустить программу, которая удалит эти флаги. [12] загрузить [ постоянная мертвая ссылка ‍ ]

Чтобы отобразить значки XP в Windows 7, опытные пользователи могут добавить новый параметр DWORD AltTabSettings в раздел реестра HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ и установить его значение равным 1.

В Windows 7 дополнительная комбинация клавиш + + вызывает диалоговое окно переключателя, которое остается на экране после того, как все клавиши отпущены. Пользователь может перемещаться по диалоговому окну в любом направлении с помощью клавиш со стрелками или линейно, возвращаясь в конце списка к началу. В этом режиме клавиша или щелчок мыши выбирает нужное окно, которое получает фокус, и диалоговое окно закрывается; закрывается без изменения фокуса.CtrlAltTab ↹Tab ↹↵ EnterEsc

В Windows 7 , чтобы использовать диалоговое окно переключателя, похожее на то, что есть в XP, можно удерживать левую клавишу -, нажать правую клавишу - , а затем нажать .AltAltTab ↹

Существует распространенная [13] [14] проблема, связанная с использованием + . Пользователь может очень легко ошибочно использовать + вместо этого, изменив язык системы с помощью использования сочетания клавиш по умолчанию. Чтобы решить эту проблему, перейдите в Панель управления/Региональные параметры/Языки/Подробности, и там есть кнопка, которая позволяет пользователю настроить сочетания клавиш для переключения языков — он/она может отключить ее или изменить на что-то более сложное для нажатия по ошибке. Эта проблема наблюдается в Windows XP и Windows 7.AltTab ↹Alt⇧ Shift

Функциональность, не относящаяся к Windows

Переключатель вкладок команд в Mac OS Big Sur.

macOS

Аналогичная функциональность существует в macOS, где вместо , используется переключение между приложениями, а не окнами. Переключатель Mac имеет дополнительные возможности указания на нужный значок мышью (также присутствует в Windows Vista и выше) и перетаскивания файлов на значки приложений. Выбранное приложение можно скрыть или закрыть с помощью клавиш или без закрытия меню. + работает аналогично для переключения между окнами в пределах одного приложения. После вызова + + меняет поведение, имитируя + + (т. е. циклически возвращается вспять). Использование или позволяет пользователю выбрать окно для фокусировки. Клавиши со стрелками и также могут использоваться для навигации по переключателю приложений.CommandAltHQ⌘ Command`⌘ CommandTab ↹⌘ Command`⌘ Command⇧ ShiftTab ↹

Эта функция не восстанавливает автоматически окна из приложения, в котором все окна были свернуты. Чтобы восстановить окно, нужно нажать + столько раз, сколько необходимо для выбора нужного приложения, и удерживать клавишу Option непосредственно перед тем, как отпустить кнопку Command. Это восстановит наиболее релевантное [ необходимая цитата ] окно в приложении.⌘ CommandTab ↹

В Classic Mac OS не было привязки клавиш по умолчанию для переключения приложений . Сторонние панели управления (такие как ApplWindows и LiteSwitch ) обеспечивали такое поведение.

Переключатель вкладок команд в iOS.

iOS

iOS добавляет сопоставимую функциональность, используя вместо , как в macOS. Переключатель iOS позволяет пользователю перемещаться между недавно использованными приложениями (девять в альбомной ориентации, шесть в портретной), в отличие от «открытых» приложений, поскольку концепция открытого приложения значительно менее ясна в iOS, чем в других настольных операционных системах. + + циклы назад, как в OS X.CommandAlt⌘ Command⇧ ShiftTab ↹

Unix

Unix-подобные настольные системы, такие как fvwm , KDE , Xfce и GNOME , добавили совместимую функцию. В некоторых системах, включая Sun CDE и старые версии fvwm , сочетание клавиш + сопоставлено с менее сложной функциональностью, такой как только чередование двух окон, циклическое перемещение вперед или назад по списку всех окон в фиксированном порядке или открытие апплета задач, в котором нужно использовать клавиши со стрелками или мышь, чтобы выбрать задачу, а затем щелкнуть или нажать Enter. Некоторые оконные менеджеры, такие как WindowLab, отказываются от экранного списка окон и просто выводят каждое окно на передний план по очереди при нажатии + .AltTab ↹AltTab ↹

Не все оконные менеджеры предоставляют эту функциональность в качестве основной функции. Например, Blackbox не предоставляет; пользователи, желающие получить такое поведение, могут добавить его, запустив вспомогательное приложение, например bbkeys .

Переключатель Flip в Compiz Fusion.

Компиз Фьюжн

Compiz Fusion (он же Beryl , Compiz ) имеет схожую функциональность, но отображает предварительный просмотр окна, а также его значок (присутствует в Windows Vista и выше, с включенным DWM). Он также использует Alt-Shift-Tab для перемещения назад по отображаемым программам, и можно активировать альтернативу Windows Flip 3D с помощью клавиши Windows и Tab.

ГНОМ

Оконный менеджер Metacity имеет схожую функциональность с версиями Windows, выпущенными до Vista, но он отображает только контур текущего выбранного окна на экране. Windows, с другой стороны, показывает все выбранное окно, что помогает пользователю выбрать правильное окно из нескольких окон с похожим заголовком или значком.

История

Комбинация клавиш + для переключения между окнами присутствовала во всех версиях Windows, начиная с Windows 1.0 . [15] Однако визуального отображения списка доступных окон при переключении между окнами не было до Windows 3.1 , когда эта функция была представлена ​​как флажок «Быстрое переключение «Alt+TAB»» в апплете панели управления «Дисплей», внутри известном как «CoolSwitch». [16]AltTab ↹

До CoolSwitch сочетание «+» было похоже на сочетание «+ » (которое также переключало окна), но «+» немедленно перерисовывало каждое окно при каждом нажатии, тогда как «+» выводило окна наверх, но не перерисовывало их, пока не была отпущена клавиша Alt.AltTab ↹AltEscAltEscAltTab ↹

Непоследовательность

Примером программы, которая нарушает ожидание, что нажатие + один раз переключит на предыдущее приложение, является Adobe Reader 7.0.x. Как и более новые версии Microsoft Word, он пытается назначить отдельный значок в меню задач + каждому документу MDI . Однако, в отличие от Word, он выводит два элемента в начало списка всякий раз, когда документ выбирается с помощью + : сначала значок, представляющий главное окно Reader, а затем значок для отдельного документа. В то время как в Adobe Reader нажатие + один раз выбирает второй элемент в списке, который является значком для документа PDF. Adobe Reader остается текущей задачей, когда + отпускается. Таким образом, демонстрируется, что правильная работа + , как и некоторых других аспектов среды Windows, таких как цепочка буфера обмена , зависит от правильности написания отдельных приложений.AltTab ↹AltTab ↹AltTab ↹AltTab ↹AltTab ↹AltTab ↹

Смотрите также

Ссылки

  1. ^ Рэймонд Чен (2008-07-01). "Windows Vista немного изменила порядок Alt+Tab". Блог MSDN . Microsoft . Архивировано из оригинала 3 августа 2008 г. Получено 2008-07-31 .
  2. ^ MSDN (2007-01-01). "Функция SetWindowPos". MSDN . Microsoft . Получено 2007-01-01 .
  3. ^ Рэймонд Чен (2003-10-20). "Каков порядок Alt+Tab?". The Old New Thing . Microsoft . Архивировано из оригинала 5 сентября 2006 года . Получено 2006-09-24 .
  4. ^ "Эксплойт Windows 0-day CVE-2019-1458, используемый в Operation WizardOpium". Securelist . Kaspersky . 2019-12-10 . Получено 2023-08-27 . ... Наш подробный анализ эксплойта EoP показал, что используемая им уязвимость принадлежит драйверу win32k.sys ... Сама уязвимость связана с функциональностью переключения окон (например, той, которая активируется с помощью комбинации клавиш Alt-Tab). Вот почему код эксплойта использует несколько вызовов WinAPI (GetKeyState/SetKeyState) для эмуляции операции нажатия клавиши. ...
  5. ^ Руссинович, Марк (2005-07-24). "Запуск Windows без служб". Блог Марка Sysinternals . Sysinternals . Получено 2006-09-24 .
  6. ^ Рихтер, Джеффри (июль 2000 г.). «Win32 Q&A: удобные функции в Windows и взаимосвязанные функции». Журнал MSDN . Microsoft . Получено 24 сентября 2006 г.
  7. ^ ab "Microsoft PowerToys for Windows XP". Microsoft . 2005-11-01. Архивировано из оригинала 6 октября 2006 года . Получено 2006-09-24 .
  8. ^ Малек, Эндрю. «Измените раскладку Alt+Tab, чтобы показать больше значков». MalekTips.
  9. ^ Windows 7 — список значков Alt-Tab не остается сверху
  10. ^ Окно Alt-Tab не будет оставаться поверх других окон в Windows 7
  11. ^ Окно Alt-Tab в Windows 7 исчезает, когда включен режим Aero Peek
  12. ^ Доусон, Брюс (28.05.2013). «Ошибка Alt+Tab ухудшилась в IE 10, но исправление найдено». Случайный ASCII . Получено 13.12.2015 .
  13. ^ Windows 7 — клавиатура постоянно меняет язык
  14. ^ Как избежать автоматического изменения раскладки клавиатуры в Windows
  15. ^ «Рэймонд Чен обсуждает горячие клавиши Alt+Tab и Alt+Esc». 8 сентября 2016 г.
  16. ^ Параметры раздела WIN.INI для Windows 3.1 Resource Kit
  • Рэймонд Чен, «Старая новая вещь»: Каков порядок сочетания клавиш Alt+Tab?
Взято с "https://en.wikipedia.org/w/index.php?title=Alt-Tab&oldid=1250227784"