Atalho no Windows 7 para alternar entre as janelas do mesmo aplicativo, como Cmd + `no OS X
38
Existe um atalho no Windows 7 para alternar entre janelas em um determinado aplicativo? Eu gosto muito desse recurso no OS X; qual é o seu equivalente no Windows?
<rant> Desejo que Redmond se concentre no UX e adicione mais atalhos de teclas do Windows, como nesta pergunta. Eles nos fornecem 99% das coisas que não queremos, mas não apenas facilitam nossas vidas, facilitando o uso do Windows. Eu acho que levaria um programador júnior por duas horas para adicionar um novo atalho para isso. </rant>
Pete Alvin
Respostas:
45
Se for um dos dez primeiros aplicativos na barra de tarefas, (Win)+ n, onde n é o número da sua posição, irá selecioná-lo e percorrer as janelas. (Use 0(zero) para o décimo aplicativo.) Por exemplo, eu tenho o Windows Explorer e o Internet Explorer fixados como as duas primeiras coisas na minha barra de tarefas, para que eu possa usar + 1para percorrer meus diretórios e + 2para percorrer meus navegadores.
Algumas notas estranhas:
Se você pressionar e segurar
e tipo (e solte) um dígito n, o Windows irá abrir o n º aplicativo na barra de tarefas. Tocar repetidamente n
percorrerá as janelas desse programa, conforme discutido acima. Conforme declarado pelo TranslucentCloud , se você digitar Shift+ n, ele passará por eles na ordem inversa, como Alt+ Tab
e Ctrl+ Tab, etc.
Se o n º aplicativo na barra de tarefas é preso, mas não em execução, em seguida, + nvai iniciá-lo.
Mas, se você pressionar e segurar
eShift, desde o início, e digitarn, o Windows iniciará uma nova instância (ou pelo menos uma nova janela) desse aplicativo,
mesmo se ele já estiver em execução.
(Isso falhará em alguns aplicativos, como o Windows Media Player, que não permitem a execução de várias janelas simultaneamente.)
Isso não parece para trabalhar em uma configuração de multi tela onde você estender a barra de tarefas
Erfan
11
Ótimo. E Win + Shift + 1 circula pelas janelas inversamente.
TranslucentCloud
24
No Windows 7 e 8, embora não exista nenhum atalho disponível apenas no teclado, você pode segurar Ctrlenquanto clica no ícone da barra de tarefas do aplicativo em que está interessado. Cada vez que você fizer isso, uma janela diferente pertencente a esse aplicativo será exibida. venha para a frente.
Além disso, o programa VistaSwitcher configura Win+ F11e Alt+ `para alternar entre as janelas do aplicativo atual. (BTW, seu site diz que o Windows 8 não é suportado, mas tive sorte com o 8.1); o único problema que vi até agora é que às vezes lista coisas como a barra lateral de pesquisa como janelas abertas. Eu simplesmente ignoro isso, mas YMMV.)
ENORME melhoria da qualidade de vida. Embora uma tecla de atalho dedicada seja mais ideal, a solução WIN + # é severamente limitada pelo número de teclas, baixa ergonomia e um atraso terrível, sem mencionar a criação de conflito entre as teclas de atalho acessíveis (1-4) e a localização desejada da barra de início.
precisa saber é o seguinte
11
VistaSwitcher é lindo. Obrigado pela sugestão.
Dustin Oprea
Você também pode adicionar itens à lista de
exclusões
11
Eu amo o Vista Switcher Program.
Luke
11
parece que o sucessor do vistaswitcher, que é nomeado alt-tab terminator, não tem mais o recurso de tabulação entre o mesmo aplicativo
Isso funciona muito bem com algumas ressalvas: 1) No Chrome, ele alterna entre todas as janelas do tipo Chrome, incluindo aplicativos como o Slack! 2) Para aplicativos modernos - e se você tiver apenas uma janela de aplicativo moderno aberta - ele abrirá outro aplicativo moderno aleatório (por exemplo, se você tiver o Calendário aberto e esse for o único aplicativo moderno aberto, ele abrirá "Configurações", ou "Esportes" ou "Correio" etc.)
Kirk Woll
@KirkWoll Isso mesmo. Definitivamente, há espaço para melhorá-lo. Eu não tive o tempo para realmente cavar Autohotkey para que isso aconteça ...
Seperman
Ótimo trabalho, usei imediatamente, obrigado. Alguns pontos: WinGet, Listretorna o número de janelas na Listvariável (em oposição ao List%n%pseudoarray em que os identificadores estão armazenados), para que você possa pular a WinGet, WinClassCountchamada e procurar List. Além disso, o código parece ser idêntico para as duas teclas de atalho.
Lebenita
não funciona comigo no Windows 10 de 64 bits e no Microsoft Office 2016. você pode ajudar?
Lucas
11
Isso funciona bem, no entanto, parece alternar entre TODAS as janelas, independentemente da área de trabalho. Estou usando o modo de exibição de tarefas extensivamente e preciso saltar pelas janelas apenas na mesma área de trabalho.
petr
8
Obrigado, Erasmose, mas sua versão do script autohotkey minimizará uma janela se não houver outras janelas desse tipo. Às vezes você não sabe, e minimizar é uma maneira irritante de descobrir, então modifiquei seu script da seguinte maneira:
!`:: ; Next window
WinGetClass, ActiveClass, A
WinGet, WinClassCount, Count, ahk_class %ActiveClass%
IF WinClassCount = 1
Return
Else
WinSet, Bottom,, A
WinActivate, ahk_class %ActiveClass%
return
!+`:: ; Last window
WinGetClass, ActiveClass, A
WinActivateBottom, ahk_class %ActiveClass%
return
ah, e também mudei a última classe para usar shift em vez de ctrl, já que eu sou o modificador para retroceder com vários outros atalhos de teclado. Eu amo a chave automática.
Legal. Atualizei meu código com base no seu e também recebi um feedback no fórum da Autohotkey. O novo código não passará pelas janelas minimizadas, exatamente como no Mac.
Seperman
@ Seperman, e se eu quiser passar por janelas minimizadas também. O que tenho que mudar no seu script para fazer isso.
Ghos3t
Isso funciona bem, exceto que não se comportará corretamente nos aplicativos baseados no Chrome ou no Chrome / Electron (como o VS Code e o Slack), pois percorre todos eles.
Alguns aplicativos que implementam o MDI fornecem Ctrl + Tab para alternar entre "Documentos" na mesma instância do aplicativo. por exemplo, MS Office. Mas esse não é um recurso do Windows e depende do aplicativo. Para outros softwares, existem diferentes atalhos. por exemplo, o Firefox não fornece esse recurso, mas há um complemento que adiciona a funcionalidade.
O Easy Window Switcher facilita a alternância entre janelas diferentes alt+`( como alt + backtick) como em um Mac. Esqueça a necessidade de ter
alt+tabentre um milhão e um de janelas abertas diferentes para encontrar a que você está procurando, com o Easy Window Switcher, separar as janelas do mesmo programa é apenas uma alt+`distância.
"sempre" não funciona. Se estiver trabalhando em um aplicativo diferente por algum tempo, volte e ele parará de funcionar.
Dushyant Bangal
4
O VistaSwitcher permite ou para esse recurso. É compatível com o Windows 10 (embora o nome sugira o contrário). No Windows 8 ou superior, sugiro adicionar certos aplicativos de metrô à lista de exclusões.
A resposta principal é boa, mas não funciona nas configurações de vários monitores, nas quais a barra de tarefas está configurada para mostrar apenas ícones no monitor ativo.
O Win + n funciona no meu sistema W7 com várias telas e a barra de tarefas é exibida apenas no monitor principal - foi isso que você quis dizer ou existe realmente uma maneira de fazer com que a barra de tarefas mude para o monitor atualmente ativo (o que eu imagino que seria uma distração) ?
Com o AutoHotkey também, um comportamento mais natural:
; Switch between windows of the same application with Alt+(key above Tab)
; Icon: made by Freepik (www.freepik.com), licence CC 3.0 BY
; from https://www.flaticon.com/free-icon/switch-window_71630
; Script Licence: CC0 (Public Domain)
; Source: https://framagit.org/dr4Ke/AutoHotkey_scripts
KeyName := GetKeyName("sc029")
Menu, Tray, Tip, Switch between windows of the same applications with 'Alt+%KeyName%'
*!SC029::
WinGetClass, ActiveClass, A
WinGet, WinClassCount, Count, ahk_class %ActiveClass%
If WinClassCount = 1
Return
WinGet, List, List, % "ahk_class " ActiveClass
index := 0
if not GetKeyState("Shift") {
index := 1
}
;MsgBox, Entering Loop
While GetKeyState("Alt") {
If GetKeyState("Shift") {
index := Mod(List + index - 2, List) + 1
} else {
index := Mod(List + index, List) + 1
}
WinGet, State, MinMax, % "ahk_id " List%index%
if (State == -1)
{
continue
}
WinID := List%index%
WinActivate, % "ahk_id " WinID
ErrorLevel := 1
sleep 50
While (ErrorLevel != 0) and GetKeyState("Alt") {
KeyWait, sc029, DT1
}
}
return
Criei um script do AutoHotkey para alternar entre as janelas do mesmo aplicativo que funcionam com aplicativos comuns do Windows , atalhos do Chrome e aplicativos do Chrome .
Nesse repositório do Github, há outro script do AutoHotkey que pode funcionar bem em conjunto com este, porque você poderá abrir, restaurar ou minimizar seus aplicativos usando as teclas de atalho que deseja.
Esta é a única resposta que funciona corretamente no Chrome, pois não trata o aplicativo baseado em Chrome e Electron da mesma forma. Funciona perfeitamente no Chrome, no VS Code, no Slack etc. (em casos raros, não funciona corretamente em certos aplicativos como Mintty / Cygwin, gVim e, às vezes, no Powershell, se o título do Windows for alterado)
otter. pro
0
Criei um script AutoHotkey que se integra perfeitamente ao Windows Task Switcher ( Alt+ Tab), fornecendo todos os seus benefícios: visualizações de janelas de aplicativos, clique para selecionar, navegação pelas teclas de seta, apenas ative a única janela que você deseja. Invoque / navegue com Alt+ `e Alt+ Shift+ `(backtick) para alternar entre janelas com o mesmo nome de processo que a janela atual. Acho isso mais útil do que Win+ num, pois funciona para qualquer aplicativo (em vez de ter que lembrar o número do slot fixado), as visualizações da janela são maiores, o fundo não fica desfocado e combina perfeitamente com o Alt+ Tabnavigation. Testado no Windows 10.
O truque principal é ocultar temporariamente janelas de aplicativos não-alvo do Alternador de tarefas, definindo WS_EX_TOOLWINDOWe desmarcando WS_EX_APPWINDOW. Para definir esses estilos de janelas em janelas executando como administrador, o AutoHotkey precisa ser assinado ou executado como administrador . Eu segui as instruções de assinatura muito fáceis aqui .
Opa; nossas edições foram cruzadas. Tentei juntar o Humpty Dumpty novamente; verifique se seu código é o que você queria que fosse.
Scott
0
Usando a Autohotkey, aqui está minha versão, que funciona com aplicativos Chrome e Electron. Foi modificado a partir da resposta de @ user332861 , de modo a distinguir corretamente os aplicativos Chrome e Electron, como Slack e Visual Studio Code. (Para fazer isso, ele usa em ahk_exevez de ahk_class)
!`:: ; Next window if using alt-backtick
WinGet, ExeName, ProcessName , A
WinGet, ExeCount, Count, ahk_exe %ExeName%
If ExeCount = 1
Return
Else
WinSet, Bottom,, A
WinActivate, ahk_exe %ExeName%
return
!+`:: ; prev window, Alt+shift+backtick
WinGet, ExeName, ProcessName , A
WinActivateBottom, ahk_exe %ExeName%
return
!`::
#`::
WinGet, ExeName, ProcessName, A
WinActivateBottom, ahk_exe %ExeName%
return
Simplificado a partir da resposta de @ otter.pro. Isso simplesmente alterna entre as janelas atuais do aplicativo. Andar de bicicleta para a frente pode fazer aparecer breves flashes de outras janelas. Como não ver flashes é provavelmente mais importante que o ciclismo bidirecional, apenas não avance. Além disso, esta resposta permite # `como uma alternativa ao!`, Pois essa é a combinação de teclas para o atalho do Mac.
Respostas:
Se for um dos dez primeiros aplicativos na barra de tarefas, (Win)+ n, onde n é o número da sua posição, irá selecioná-lo e percorrer as janelas. (Use 0(zero) para o décimo aplicativo.) Por exemplo, eu tenho o Windows Explorer e o Internet Explorer fixados como as duas primeiras coisas na minha barra de tarefas, para que eu possa usar + 1para percorrer meus diretórios e + 2para percorrer meus navegadores.
Algumas notas estranhas:
Se você pressionar e segurar e tipo (e solte) um dígito n, o Windows irá abrir o n º aplicativo na barra de tarefas. Tocar repetidamente n percorrerá as janelas desse programa, conforme discutido acima. Conforme declarado pelo TranslucentCloud , se você digitar Shift+ n, ele passará por eles na ordem inversa, como Alt+ Tab e Ctrl+ Tab, etc.
Se o n º aplicativo na barra de tarefas é preso, mas não em execução, em seguida, + nvai iniciá-lo.
fonte
No Windows 7 e 8, embora não exista nenhum atalho disponível apenas no teclado, você pode segurar Ctrlenquanto clica no ícone da barra de tarefas do aplicativo em que está interessado. Cada vez que você fizer isso, uma janela diferente pertencente a esse aplicativo será exibida. venha para a frente.
Além disso, o programa VistaSwitcher configura Win+ F11e Alt+ `para alternar entre as janelas do aplicativo atual. (BTW, seu site diz que o Windows 8 não é suportado, mas tive sorte com o 8.1); o único problema que vi até agora é que às vezes lista coisas como a barra lateral de pesquisa como janelas abertas. Eu simplesmente ignoro isso, mas YMMV.)
fonte
alt-tab terminator
, não tem mais o recurso de tabulação entre o mesmo aplicativoVocê pode usar o AutoHotkey: www.autohotkey.com
E coloque esse script lá:
Funciona muito bem para mim. Usando a Autohotkey, também fiz minhas teclas de copiar / colar / desfazer ... como o Mac. Funciona bem!
Eras
fonte
WinGet, List
retorna o número de janelas naList
variável (em oposição aoList%n%
pseudoarray em que os identificadores estão armazenados), para que você possa pular aWinGet, WinClassCount
chamada e procurarList
. Além disso, o código parece ser idêntico para as duas teclas de atalho.Obrigado, Erasmose, mas sua versão do script autohotkey minimizará uma janela se não houver outras janelas desse tipo. Às vezes você não sabe, e minimizar é uma maneira irritante de descobrir, então modifiquei seu script da seguinte maneira:
ah, e também mudei a última classe para usar shift em vez de ctrl, já que eu sou o modificador para retroceder com vários outros atalhos de teclado. Eu amo a chave automática.
fonte
Alguns aplicativos que implementam o MDI fornecem Ctrl + Tab para alternar entre "Documentos" na mesma instância do aplicativo. por exemplo, MS Office. Mas esse não é um recurso do Windows e depende do aplicativo. Para outros softwares, existem diferentes atalhos. por exemplo, o Firefox não fornece esse recurso, mas há um complemento que adiciona a funcionalidade.
Além disso, aqui está uma lista de atalhos de teclado fornecidos no Windows.
Além disso, existem discussões sobre atalhos de teclado no Windows.
Espero que ajude.
fonte
O Easy Windows Switcher da Neosmart faz exatamente o que você procura.
Aqui está a descrição do site Easy Windows Switcher
fonte
O VistaSwitcher permite ou para esse recurso. É compatível com o Windows 10 (embora o nome sugira o contrário). No Windows 8 ou superior, sugiro adicionar certos aplicativos de metrô à lista de exclusões.
A resposta principal é boa, mas não funciona nas configurações de vários monitores, nas quais a barra de tarefas está configurada para mostrar apenas ícones no monitor ativo.
fonte
Além do que Scott ( https://superuser.com/users/150988/scott ) compartilhou:
ctrl+ repeatedly click sobre o ícone do aplicativo na barra de tarefas também fará o trabalho.
fonte
Com o AutoHotkey também, um comportamento mais natural:
fonte
Criei um script do AutoHotkey para alternar entre as janelas do mesmo aplicativo que funcionam com aplicativos comuns do Windows , atalhos do Chrome e aplicativos do Chrome .
https://github.com/JuanmaMenendez/AutoHotkey-script-Open-Show-Apps/blob/master/AutoHotkey-script-Switch-Windows-same-App.ahk
Extra
Nesse repositório do Github, há outro script do AutoHotkey que pode funcionar bem em conjunto com este, porque você poderá abrir, restaurar ou minimizar seus aplicativos usando as teclas de atalho que deseja.
Exemplo:
F7:: OpenOrShowAppBasedOnExeName("C:\Windows\System32\SnippingTool.exe")
F8:: OpenOrShowAppBasedOnWindowTitle("Gmail", "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --app=https://mail.google.com/mail/")
fonte
Criei um script AutoHotkey que se integra perfeitamente ao Windows Task Switcher ( Alt+ Tab), fornecendo todos os seus benefícios: visualizações de janelas de aplicativos, clique para selecionar, navegação pelas teclas de seta, apenas ative a única janela que você deseja. Invoque / navegue com Alt+ `e Alt+ Shift+ `(backtick) para alternar entre janelas com o mesmo nome de processo que a janela atual. Acho isso mais útil do que Win+ num, pois funciona para qualquer aplicativo (em vez de ter que lembrar o número do slot fixado), as visualizações da janela são maiores, o fundo não fica desfocado e combina perfeitamente com o Alt+ Tabnavigation. Testado no Windows 10.
O truque principal é ocultar temporariamente janelas de aplicativos não-alvo do Alternador de tarefas, definindo
WS_EX_TOOLWINDOW
e desmarcandoWS_EX_APPWINDOW
. Para definir esses estilos de janelas em janelas executando como administrador, o AutoHotkey precisa ser assinado ou executado como administrador . Eu segui as instruções de assinatura muito fáceis aqui .Alguns tópicos relacionados que contribuíram:
fonte
Usando a Autohotkey, aqui está minha versão, que funciona com aplicativos Chrome e Electron. Foi modificado a partir da resposta de @ user332861 , de modo a distinguir corretamente os aplicativos Chrome e Electron, como Slack e Visual Studio Code. (Para fazer isso, ele usa em
ahk_exe
vez deahk_class
)fonte
Simplificado a partir da resposta de @ otter.pro. Isso simplesmente alterna entre as janelas atuais do aplicativo. Andar de bicicleta para a frente pode fazer aparecer breves flashes de outras janelas. Como não ver flashes é provavelmente mais importante que o ciclismo bidirecional, apenas não avance. Além disso, esta resposta permite # `como uma alternativa ao!`, Pois essa é a combinação de teclas para o atalho do Mac.
fonte