Как быстро переместить текущее окно в другой вид задач / рабочий стол в Windows 10?

159

В Windows 10 введено представление задач - возможность иметь несколько виртуальных рабочих столов. Когда я нахожусь в окне на Desktop1, каков самый быстрый способ переместить его на Desktop2?

В настоящее время мне нужно войти в переключатель задач (значок на панели задач или Win + Tab), найти окно и перетащить его между рабочими столами. Это неудобно. Есть ли более быстрый способ?

Борек Бернард
источник
3
Это то, как я это делаю, и только так я знаю, как это сделать. Нажмите клавишу Windows + Tab . Нажмите Tab еще раз . Это удаляет контур из активной пиктограммы программы и активным интерфейсом представления задач. Используйте клавиши со стрелками для перемещения между рабочими столами в интерфейсе представления задач. Когда вы выделите рабочий стол, на который хотите переключиться, нажмите Enter .
zain.ali
7
Оооооо, вы можете попробовать WINKEY + CTRL + СТРЕЛКА ВЛЕВО или WINKEY + CTRL + СТРЕЛКА ВПРАВО
zain.ali
43
Речь идет не о перемещении между рабочими столами, а о перемещении окон с одного рабочего стола на другой. И да, Ctrl + Win + влево / вправо это круто :)
Борек Бернард
В проекте, над которым работает мой брат, он реализовал его как WINKEY-X, WINKEY-V. Работает супер плавно. Если бы только Microsoft догнала ... youtube.com/watch?v=BAc7sBvViFg
Wouter
3
Когда ожидать, что Windows встроит горячую клавишу для этого?
главный-идеальный домен

Ответы:

112

Я думаю, для более быстрого переключения это должно быть в заголовке, поэтому я создал инструмент для этого:

https://github.com/Eun/MoveToDesktop

введите описание изображения здесь

Вы также можете перемещать окна с помощью WIN+ ALT+ Left/ Rightили изменить ярлык по мере необходимости.

Eun
источник
1
Да! В заключение!!! Спасибо вам большое! :) Как пользователь Ubuntu, я был очень взволнован виртуальными рабочими столами в Windows 10 ... но без этой функциональной клавиши это было бесполезно. Теперь эта функция, наконец, завершена :) Спасибо за ваши усилия и спасибо за открытый исходный код.
Адамски
5
Загрузите MoveToDesktop-X.Y.zipиз раздела «Релизы». Там есть .exeфайл, распакуйте его куда-нибудь и запустите. Нет необходимости в Visual Studio 2015. Возможно, вам просто нужно установить распространяемый пакет Visual C ++.
Eun
4
Этот инструмент не работал.
К Робинсон
2
Интересно, когда Windows добавит перетаскивание на экран виртуальных рабочих столов - это было бы удивительно
Mikey
2
@Ninjakannon Нет, я думаю, что Майки говорит о возможности перетаскивания окна по бокам экрана на следующий рабочий стол без изменения вида. Точно так же, как это происходит почти на всех рабочих столах Linux и на Ubuntu Unity. Также обычно есть настройка для привязки, которая позволяет пользователю все еще привязываться в сторону, но если использовать больше силы или импульса, тогда пользователь сможет перетащить окно за границу в следующий виртуальный рабочий стол вместо привязки.
mchid
67

Я также искал эту опцию, и из поисков, которые я сделал (я думаю, что я также видел это на форумах Microsoft), это не то, что доступно встроенным в данный момент.

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

  • Winkey+ tabдля экрана рабочего стола
  • Щелкните правой кнопкой мыши на окне, которое вы хотите переместить.
    Используйте правую кнопку клавиатуры или Shift+, F10если у вас нет этой клавиши на клавиатуре.
  • Выберите Move to(или введите M, потому что он отмечен), а затем нужный рабочий стол (или Nдля нового рабочего стола, также отмеченный)

Это не очень помогает, но это то, что есть, пока кто-то не разработает что-то, чтобы сделать это легче.

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

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SessionInfo\1\ApplicationViewManagement 
(I guess the session number will change if there is more than one logged in).

Идентификатор текущего рабочего стола находится здесь:

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SessionInfo\1\VirtualDesktops\CurrentVirtualDesktop

Недостаточно заменить его на другой ключ виртуального рабочего стола, потому что требуется некоторое обновление пользовательского интерфейса.

Я проверил с procmon, и DLL, которые используются в этом процессе:

  • Msctf.dll
  • twinui.dll
  • windows.immersiveshell.serviceprovider.dll
  • shell32.dll
  • UIAnimation.dll

Я предполагаю, что один из них отвечает за визуальное обновление, а основным подозреваемым является UIAnimation.dll!

Если кто-то хочет продолжать расследование, это послужит началом.

arieljannai
источник
4
После нажатия Win + Tab вы также можете просто перетащить окно на нужный вам рабочий стол.
Nearoo
2
@Nearoo, который теряет смысл делать это быстро - в основном без мыши.
arieljannai
2
@arieljannai Нет, перетаскивать его, скорее всего, быстрее, чем щелкнуть правой кнопкой мыши, открыть подменю и щелкнуть на рабочем столе. Тем не менее, лучше всего использовать ярлык на Linux.
Стефан Фабиан
1
Только что узнал что-то новое и полезное Shift + F10 = правый клик
JDuarteDJ
15

Я использую Windows 10 Virtual Desktop Enhancer .

Просто скачайте , запустите (и настройте автозапуск, если вам нужно).

Затем вы можете просто нажать Win+ Ctrl+ Shift+ Arrow Left/, Arrow Rightи это перенесет ваше приложение на другой рабочий стол и переключится на этот рабочий стол.

CichyK24
источник
Сценарий не работает для меня, но выпуск exe работает. Отличное решение!
lucidbrot
2
просто, прозрачно, легко установить = идеально!
Понятно
11

На этом уровне управления Windows я действительно думаю, что вы должны использовать стороннюю программу, чтобы помочь. Моим собственным решением было добавить простой ярлык для AutoHotKey (AHK):

#|::Send, +{F10}M{Enter}

# | это ярлык, который переводит в WIN- | На моей клавиатуре это имеет смысл, так как | выше TAB, но вы можете изменить его так, как вам удобно.

Используя приведенный выше ответ от arieljannai , отправив SHIFT+F10 M ENTERпомеченное окно, вы переместитесь на другой виртуальный рабочий стол, если вы переключаетесь между двумя.

Для ознакомления с AHK см. Https://autohotkey.com/docs/Tutorial.htm .

vildauget
источник
2
F10 ничего не делает на моем компьютере. Контекстное меню ключ моей клавиатуры (французский) делает работу , хотя.
Себастьян
win+Tab, context, V, Enter на швейцарско-немецкой установке
lucidbrot
1
Только F10 не вызывает контекстное меню, вы должны удерживать Shift (обозначено + в AHK выше). обновленный ответ для отражения опечатки.
Кевинф
6

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

1. WIN + Tab для быстрого просмотра всех приложений / окон (если у вас несколько мониторов, на каждом мониторе будет один список для каждого виртуального рабочего стола).

2. Щелкните правой кнопкой мыши по приложению / окну, над которым вы хотите перейти -> «Переместить в» и выберите рабочий стол, на который вы хотите отправить приложение.

Прежде чем я нашел это, я даже попробовал опубликованный выше проект MoveToDesktop, но я нахожу это таким же легким, и меню MoveToDesktop , похоже, не появляется во всех приложениях (например, не Chrome или Sublime на данный момент).

ночью
источник
3
Жаль, что до сих пор нет горячей клавиши для этого. Хотя это тоже хорошо работает.
JP Hellemons
Как только вы настроите настольные компьютеры, это редкость, когда вам нужно что-то перенести, не так ли?
ночи
Я перемещаю экраны с монитора 1 на 2 все время с помощью горячей клавиши. Я постоянно переключаюсь между рабочими столами с помощью горячей клавиши, так почему бы не использовать горячую клавишу для перемещения окна между виртуальными рабочими столами? И я имею в виду встроенную горячую клавишу сборки в win10
JP Hellemons
Было бы действительно хорошо.
ночи
4
На протяжении многих лет в Ubuntu Linux было так приятно, что вы можете настраивать свои виртуальные рабочие столы, даже не отрывая рук от клавиатуры. В процессе работы над тем, над чем вы работаете, вы можете решить запустить приложение с помощью его горячей клавиши, а затем только после этого решить, что вы бы предпочли поместить его в новое или другое рабочее пространство, и отправить его туда с помощью другой горячей клавиши. Нет необходимости перемещать руку к мыши или сенсорной панели. Это невероятно быстро и эффективно. Я очень скучаю по Windows. Фактически это одна из причин, по которой я сейчас использую Windows только для определенных игр или продуктов Adobe.
cdaddr
6

zVirtualDesktop

Я использую это для этой цели. У него есть сочетания клавиш - и это здорово.
Разработчик очень отзывчив, если вы сообщаете о проблеме или задаете вопрос или о возможной функции.

Лучшая особенность - DesktopViewсм. Ниже.

На GitHub есть еще варианты, которые я сейчас не могу вспомнить 😅

Вот несколько скриншотов zVirtualDesktop

Вы можете выбрать из этих значков в системном трее введите описание изображения здесь

У этого есть действительно хорошая особенность, названная DesktopViewпоказанной ниже. С этим видом вы можете перетащить ваши окна на любой рабочий стол. Он также работает как Alt + Tab в том смысле, что вы можете щелкнуть миниатюру, чтобы перейти в это окно. введите описание изображения здесь

Примечание: я ответил на этот вопрос около 1,5-2 лет назад, с некоторыми подсказками, чтобы начать что-то разрабатывать. Но сейчас есть некоторые решения, разработанные для этого.
Я добавил новый ответ, поскольку нет смысла редактировать / улучшать мой предыдущий ответ, поскольку они совершенно разные.

arieljannai
источник
Есть много программ для этого, но ОП спрашивает о диспетчере виртуальных рабочих столов, включенном в Windows.
Скан
2
Я этим не пользовался, но VirtuaWin тоже стоит попробовать, поскольку он (1) может автоматически перехватывать программы на своем рабочем столе и (2) имеет надстройки для повышения производительности.
Ooker
1
Я проверил zVirtualDesktop, и это не выглядит заслуживающим доверия. Размещается на Github, но является закрытым исходным кодом (очевидно, источник был удален), более старая версия, которая была, очевидно, случайно загружена на Github (exe есть в истории), имеет другую лицензию на использование (частное использование бесплатно навсегда), но автоматически обновляется до версия "все платит" ... Также нет упоминания о цене на сайте, только когда вы ее уже запустили
sinni800
3

Я использую autohotkey с сочетанием клавиш CTRL + WIN + SHIFT + LEFT или RIGHT, чтобы перенести окна на другой виртуальный рабочий стол. Я использую только 2 виртуальных рабочих стола, так что это работает для меня независимо от того, нажимаю я влево или вправо.

Код AHK:

#^+Left::
#^+Right::
Send #{tab}        ;WIN+TAB=Open the desktop view
Sleep 200
Send +{F10}M{Enter};SHIFT+F10=context menue. M=move. Enter for the first desktop in the list.
Sleep 100
Send #{tab}        ;WIN+TAB=Close the desktop view
return
Арно Рейнхофер
источник
Обратите внимание, что это работает только (в настройке с несколькими мониторами) для приложений на главном мониторе. Мне нужно было добавить «Send {Left} {Right}» после «Send # {tab}», чтобы убедиться, что приложение действительно выбрано перед попыткой перемещения, или это ничего не сделало.
Дан
2

Принимая подсказки от решений Greenonline и Sebastien:

  1. Нажмите «Win + Tab» для представления управления рабочей областью
  2. Клавиши со стрелками для перехода к интересующему окну (если оно было последним в фокусе, в этом не должно быть необходимости).
  3. Нажмите клавишу «Контекст» для выпадающего меню, где вы можете выбрать переход на другие рабочие столы.

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

pete_san
источник
1

Начиная с Windows 10 Версии 1803, простой способ переместить текущее / целевое окно с одного рабочего стола на другой следующим образом:

  1. Нажмите Win + Tab, чтобы увидеть график.
  2. Под разделом Рабочие столы вы увидите окно списка активных запущенных программ под текущим рабочим столом. Нажмите и удерживайте окно и перетащите на нужный рабочий стол.
  3. Вуаля!


Кроме того, он является родным и не требует никакого стороннего программного обеспечения.

androizer
источник
0

Решение AutoHotkey. Привязано к Win + тильда ключ. Этот скрипт автоматизирует все нажатия клавиш, которые вы выполняете вручную, чтобы отправить его на следующий (если вы находитесь на первом) или на предыдущий рабочий стол. Будьте осторожны с такими вещами - это может быть опасно, если этот ввод идет в неправильный пункт назначения.

SendMode Input 
#`::
    send {blind}#{tab}
    sleep 1000
    send {appskey}
    sleep 300
    send {down}
    sleep 200
    send {down }
    sleep 200
    send {right}
    sleep 200
    send {left}
    sleep 200
    send {right}
    sleep 300
    send {enter}
    sleep 300
    send {esc}
    sleep 300
return
Михаил V
источник
-4

Просто нажмите Winkey + Tab, теперь выберите программу (окно) и перетащите ее в список рабочих столов, показанный ниже (Рабочий стол 1 или 2). Готово. По-другому никак..

Вигнеш
источник
5
«Другого пути нет». Очевидно, ложь, как показывает другой ответ.
DavidPostill
это лучший ответ, несмотря на отрицательные голоса
jmhostalet
-5

Win+ Shift+ Arrow Left/Arrow Right

или же

Win+ Arrow Left/Arrow Right

или же

Win+ Arrow Up/Arrow Down

Системе не хватает памяти
источник
1
Эти ярлыки не перемещаются между виртуальными рабочими столами.
Майкл Миор
3
Кажется, он перемещается между несколькими дисплеями
jlanza