Mais um script AHK

Mais um script AHK

Windows 10 introduzidoExibição de tarefa- a capacidade de ter vários desktops virtuais. Quando estou em uma janela na Área de Trabalho 1, qual é a maneira mais rápida de movê-la para a Área de Trabalho 2?

Atualmente, preciso entrar no alternador de tarefas (ícone na barra de tarefas ou Win+ Tab), encontrar a janela e arrastá-la e soltá-la entre as áreas de trabalho. É inconveniente. Existe uma maneira mais rápida?

Responder1

Acho que para uma troca mais rápida isso deveria estar na barra de título, então criei uma ferramenta para isso:

https://github.com/Eun/MoveToDesktop

insira a descrição da imagem aqui

Você também pode mover janelas usando WIN+ ALT+ Left/ Rightou alterar o atalho conforme necessário.

Responder2

Também procurei essa opção e, pelas pesquisas que fiz (acho que também vi nos fóruns da Microsoft), não é algo que esteja disponível integrado no momento.

A melhor maneira que encontrei por enquanto, para evitar o uso do mouse, é:

  • Winkey+ tabpara a tela dos desktops
  • Clique com o botão direito na janela que deseja mover.
    Use o botão direito do teclado ou Shift+ F10se você não tiver essa tecla no teclado.
  • Escolha Move to(ou digite M, porque está marcado) e depois a área de trabalho desejada (ou Npara nova área de trabalho, também marcada)

Isso não ajuda muito, mas é o que existe até que alguém desenvolva algo para facilitar.

Atualizar:Eu comecei a investigar isso. Há um valor de registro que muda quando o aplicativo é movido entre desktops. Nesse local, estão todos os aplicativos abertos:

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).

O id da área de trabalho atual está aqui:

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

Não é suficiente alterá-lo para outra chave da área de trabalho virtual porque é necessária alguma atualização da interface do usuário.

Verifiquei com o procmon e as dll's usadas no processo são:

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

Suponho que um deles seja o responsável pela atualização visual, e o principal suspeito é UIAnimation.dll!

Se alguém quiser continuar investigando, isso servirá de começo.

Responder3

Mais um script AHK

#Left::
  WinGetTitle, Title, A
  WinSet, ExStyle, ^0x80, %Title%
  Send {LWin down}{Ctrl down}{Left}{Ctrl up}{LWin up}
  sleep, 50
  WinSet, ExStyle, ^0x80, %Title%
  WinActivate, %Title%
Return

#Right::
  WinGetTitle, Title, A
  WinSet, ExStyle, ^0x80, %Title%
  Send {LWin down}{Ctrl down}{Right}{Ctrl up}{LWin up}
  sleep, 50
  WinSet, ExStyle, ^0x80, %Title%
  WinActivate, %Title%
Return

Isso move a janela ativa para a esquerda ou para a direita com as teclas win+seta. Testado no Win10 versão 10.0.17134.1365 com animações desativadas.

Responder4

Neste nível de gerenciamento do Windows, eu realmente acho que você deveria usar um programa de terceiros para ajudar. Minha própria solução para isso foi adicionar um atalho simples paraAutoHotKey(AHK):

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

#|é o atalho, que se traduz em Win+|

No meu teclado, isso faz sentido, como |acima Tab, mas você pode alterá-lo para o que for mais adequado às suas necessidades.

Usandoresposta acima de arieljannai, enviando Shift+ F10, M, Enter, a janela marcada será movida para a outra área de trabalho virtual se você estiver fazendo malabarismos entre duas.

Para uma introdução ao AHK, consultehttps://autohotkey.com/docs/Tutorial.htm.

informação relacionada