как сделать ALT+TAB для основной системы во время работы в VBOX?

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

Недавно я столкнулся с этой проблемой. Я использую Lubuntu 13.04 в VirtualBox. Когда я развернул его на весь экран и хотел переключиться на следующее окно основной системы, я обычно нажимаю ALT + TAB, но это не срабатывает для основной системы и переключает на Lubuntu в Vbox.

Как я могу активировать функциональность ALT + TAB основной системы, даже если у меня развернута на весь экран операционная система VirtualBox?

Спасибо.

Мое решение: VirtualBox: Файл -> Настройки -> Ввод -> снимите отметку “Авто захват клавиатуры”

  1. Введите VirtualBox

  2. Нажмите клавишу Host.

    • По умолчанию клавиша Host – это правый Ctrl.
    • На macOS клавиша Host по умолчанию – это правый Command.
    • В предыдущей версии этого ответа была указана клавиша Alt.
  3. Теперь ALT + TAB должно работать.

Что касается клавиши Host из Руководства VirtualBox, Глава 1

Чтобы вернуть управление клавиатурой и мышью вашей основной операционной системе, VirtualBox резервирует специальную клавишу на вашей клавиатуре для себя: “клавишу хоста”. По умолчанию это правая клавиша управления на вашей клавиатуре; на Mac хосте стандартная клавиша хоста – это левая клавиша Command. Вы можете изменить это значение по умолчанию в Глобальных настройках VirtualBox, смотрите Раздел 1.15, “Глобальные настройки”. В любом случае текущая настройка для клавиши хоста всегда отображается внизу справа в окне вашей виртуальной машины, если вы забыли об этом.

Решение из двух частей:

(1) Моё решение: VirtualBox: Файл -> Настройки -> Ввод -> снимите отметку Авто захват клавиатуры (взято от @baronbaleron выше)

(2) Переназначьте Переключение между открытыми окнами на ctrl+tab. В Linux Mint (производная от Ubuntu): Меню Пуск -> Клавиатура -> Сочетания клавиш -> Общие -> Переключение между открытыми окнами -> измените назначение на ctrl + tab

Поскольку я использую свою левую руку для выполнения Alt+Tab, я лично установил свою клавишу хоста на Левый Ctrl. Это значительно облегчает переключение, если ваша правая рука находится на мыши: нажмите Левый Ctrl, затем Alt+Tab.

Нажатие клавиши Host один раз перед нажатием комбинации Alt + Tab кажется работает для многих. Если это не работает для вас, попробуйте нажать её дважды вместо этого.

На MacOS:
(Контроль + ALT) затем Tab

В виртуальной машине, которую я использую, мне также нужно нажать Enter после этого, что немного неудобно.

Это позволяет вам использовать Win+Tab на гостевой машине, в то время как Alt+Tab будет передано хосту. Мне действительно не хватает этой функциональности, когда у меня её нет.

Это также работает с удалённым подключением рабочего стола Windows.

В меню VitualBox перейдите в Файл > Настройки > Ввод и убедитесь, что [ ] Авто захват клавиатуры снята. Это не будет работать, если она отмечена.

Это требует AutoHotKey (или аналогичной платформы сценариев, синтаксис которой вам нужно исследовать) для запуска на хосте и гостевой системе. Вы можете создать аналогичный скрипт только на хосте, но вам придётся нажимать Alt после каждого использования Win+Tab на гостевой машине, чтобы освободить состояние клавиши.

Это написано для Windows 10 хоста и Windows 10 гостя, но я не вижу причины, почему это не может работать с другими гостями. Есть программы, такие как AutoHotKey, которые могут позволить другим ОС хоста сделать что-то подобное.

Оба скрипта должны быть запущены от имени администратора, чтобы иметь возможность отслеживать процессы, которые также запущены от имени администратора.

Хост-машина

Установите это на хост-машину, например, под именем WinTabHost.ahk.

#SingleInstance, Force
hostkey = RCTRL                                            ; установите это на ваш HOSTKEY VirtualBox
boxMode := ""
Hotkey, <#Tab, WinTabbing
Hotkey, >#Tab, WinTabbing
Return

TabFinish:
    Send, {ALT UP}
    RDCKeysState("Off")
Return

Tabbing:
    Send, {Right}
Return

WinTabbing:
  WinGetTitle, Title, A
  StringRight, TitleEnd, Title, 25

  RDCKeysState("On")
  If (InStr(Title, "[Running] - Oracle VM VirtualBox")) {  ; Гостевой режим

    Send, {%hostkey%}                                      ; Активировать состояние захвата
    Sleep, 200                                             ; Задержка, чтобы дать машине время обработать, на всякий случай
    Send, #{TAB}                                           ; Отправить Win+Tab
    Send, {%hostkey%}                                      ; Освободить состояние захвата

  } Else If (TitleEnd = "Remote Desktop Connection") and (not Title = "Remote Desktop Connection") {  ; Режим RDC
 
    Send, {Alt down}{PgDn}                                 ; Нажмите и удерживайте alt, нажимая pgdn

  } Else {                                                 ; Хост-режим

    Send, {ALT Down}{TAB}                                  
    Sleep, 200                                             ; Задержка, чтобы дождаться появления окна Alt-Tab
    iter := 0                                              ; счётчик цикла
    Loop {
      iter := iter+1
      if (!WinExist("Task Switching") Or iter > 60) {      ; Если Alt+tab исчезло или прошло 30 секунд
        Send, {ALT UP}
        Break
      }
      Sleep, 500
    }
  }
Return

RDCKeysState(toggle) {
    ; Эта функция сопоставляет все способы, которыми пользователь может закрыть окно alt-tab.
    Hotkey, Enter, TabFinish, %toggle%                   ; Привязать Enter, Клик и их альтернативы по alt к TabFinish()
    Hotkey, !Enter, TabFinish, %toggle%
    Hotkey, LButton, TabFinish, %toggle%
    Hotkey, !LButton, TabFinish, %toggle%
    Hotkey, *LWIN UP, TabFinish, %toggle%
    Hotkey, *RWIN UP, TabFinish, %toggle%
    Hotkey, *Tab, Tabbing, %toggle%
}

; если вы получили ошибку 'не удалось закрыть предыдущий экземпляр скрипта,`
; всякий раз, когда вы пытаетесь перезагрузить скрипт, вам нужно щёлкнуть по нему правой кнопкой мыши и выбрать
; 'Запуск от имени администратора'

Гостевая машина

Установите это на гостевую машину, например, под именем WinTabGuest.ahk.

#SingleInstance, Force
SetWorkingDir %A_ScriptDir%
if (not A_IsAdmin) {
    Run *RunAs "%A_ScriptFullPath%"                         ; Запустите как администратор, чтобы обнаружить нажатия клавиш, сфокусированных на Eleveted Programs
}
Hotkey, <#Tab, WinTabbing
Return

TabFinish:
    Tooltip, TabOut
    Send, {ALT UP}
    RDCKeysState("Off")
Return

Tabbing:
    Send, {Right}
Return

WinTabbing:
    Send {Alt DOWN}{TAB}
    RDCKeysState("On")
    Sleep, 200
    iter := 0
    Loop
    {
      iter := iter+1
      Sleep, 200
      if (!WinExist("Task Switching") Or iter >= 60) {
        Send, {ALT UP}
        Break
      }
      Sleep, 500
    }
Return

RDCKeysState(toggle) {
    Hotkey, Enter, TabFinish, %toggle%
    Hotkey, !Enter, TabFinish, %toggle%
    Hotkey, LButton, TabFinish, %toggle%
    Hotkey, !LButton, TabFinish, %toggle%
    Hotkey, *LWIN UP, TabFinish, %toggle%
    Hotkey, *RWIN UP, TabFinish, %toggle%
    Hotkey, *Tab, Tabbing, %toggle%
}

Если вы любите сочетания клавиш, как и я, воспользуйтесь другими методами, упомянутыми выше. Мне также не нравится использовать трекпад, но я подумал, что это стоит попробовать. В Windows 11 можно использовать горизонтальный жест тремя пальцами на трекпаде. Это на самом деле отличная замена, которой я здесь не видел.

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

Как использовать ALT+TAB для переключения на основную систему во время работы в VirtualBox

При использовании VirtualBox, особенно если ваша виртуальная машина (ВМ) работает в режиме полного экрана или максимально развернутого окна, может возникнуть сложность с использованием сочетания клавиш ALT+TAB для переключения между окнами основной операционной системы. Вместо этого команда ALT+TAB будет интерпретироваться виртуальной машиной, что усложняет управление задачами.

В данном руководстве предложим несколько эффективных решений, которые помогут вам активировать функциональность ALT+TAB для основной системы, находясь при этом в VirtualBox.

1. Отключение автоматического захвата клавиатуры в VirtualBox

Первый шаг заключается в том, чтобы изменить настройки VirtualBox:

  • Откройте VirtualBox.
  • Перейдите в меню: Файл -> Настройки -> Ввод.
  • Убедитесь, что Автоматический захват клавиатуры (Auto Capture Keyboard) отключён (снимите отметку). Это позволит возвращать управление клавиатурой основной системе без необходимости использовать специальную клавишу.

Данное изменение предотвращает автоматическую блокировку клавиатуры VirtualBox, предоставляя вам более легкий подход к переключению окон.

2. Использование клавиши Host

Каждая виртуальная машина в VirtualBox имеет определённую "Клавишу-хозяина" или Host key. По умолчанию это правая клавиша CTRL для Windows и правая клавиша Command для macOS. Эта ключевая настройка позволяет возвратить управление клавиатурой и мышью основной операционной системе.

  1. Находясь в виртуальной машине, нажмите клавишу Host (права CTRL).
  2. Затем используйте комбинацию ALT + TAB для переключения между окнами основной системы.

Важно: Если первый раз не сработало, попробуйте нажать клавишу Host дважды.

3. Настройка комбинаций клавиш для переключения окон

Если вы используете дистрибутив Linux на виртуальной машине, вы можете изменить сочетания клавиш:

  1. Откройте меню «Настройки клавиатуры» вашего дистрибутива.
  2. Найдите опцию Цикл через открытые окна и измените привязку на CTRL + TAB. Это поможет избежать конфликтов с сочетанием ALT + TAB.

4. Альтернативные параметры для macOS

Для пользователей macOS существует альтернатива:

  • Нажмите Control + ALT, затем TAB.
  • Иногда требуется нажать Enter, чтобы осуществить переключение, особенно если вы используете режим виртуальной машины, оптимизированный для производительности.

5. Военные ключи и сторонние утилиты

Для более продвинутых пользователей, вы можете использовать такие утилиты, как AutoHotKey (для Windows), которые позволяют создавать макросы для управления клавиатурой. С помощью AutoHotKey можно настроить скрипты, позволяющие более гибко реагировать на нажатия клавиш и абстрагироваться от виртуальной машины.

Заключение

Использование ALT+TAB для переключения между окнами основной системы, находясь в VirtualBox, может показаться сложным. Однако, следуя приведённым выше шагам, вы сможете легко и быстро вернуть управление клавиатурой и мышью вашей основной системе. Настройка VirtualBox и использование клавиши Host упрощает взаимодействие с окнами, а возможность переназначения клавиш позволяет адаптировать управление под ваши предпочтения.

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

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

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