Raccourci dans Windows 7 pour basculer entre les fenêtres de la même application, comme Cmd + `sous OS X
38
Existe-t-il un raccourci dans Windows 7 pour basculer entre les fenêtres dans une application donnée uniquement? J'aime beaucoup cette fonctionnalité dans OS X; quel est son équivalent sous Windows?
<rant> J'aimerais que Redmond se concentre sur l'UX et ajoute plus de raccourcis clavier Windows, comme pour cette question. Ils nous donnent 99% de choses que nous ne voulons pas, mais ne nous facilitent pas seulement la vie en rendant Windows plus facile à utiliser. Je suppose qu'il faudrait un programmeur junior toutes les deux heures pour ajouter un nouveau raccourci pour cela. </rant>
Pete Alvin
Réponses:
45
S'il s'agit de l'une des dix premières applications de la barre des tâches, alors (Win)+ n, où n est son numéro de position, la sélectionnera et fera défiler les fenêtres. (Utilisez 0(zéro) pour la dixième application.) Par exemple, j'ai Windows Explorer et Internet Explorer épinglés comme les deux premières choses sur ma barre des tâches, donc je peux utiliser + 1pour parcourir mes répertoires et + 2pour parcourir mes navigateurs.
Quelques notes étranges:
Si vous appuyez et maintenez
et tapez (et relâchez) un chiffre n, Windows ouvrira la n ième application dans la barre des tâches. Appuyez plusieurs fois sur n
les fenêtres de ce programme, comme indiqué ci-dessus. Comme indiqué par TranslucentCloud , si vous tapez ensuite Shift+ n, il les parcourra dans l'ordre inverse, comme avec Alt+ Tab
et Ctrl+ Tab, etc.
Si la n e application de la barre des tâches est épinglée mais ne fonctionne pas, + la nlancera.
Mais, si vous appuyez et maintenez
etShift, dès le début, et puis tapezn, Windows démarre une nouvelle instance (ou au moins une nouvelle fenêtre) de cette demande,
même si elle est déjà en cours d' exécution.
(Cela échouera pour certaines applications, comme Windows Media Player, qui ne permettent pas à plusieurs fenêtres de s'exécuter simultanément.)
+ nsemble ne pas fonctionner avec le pavé numérique.
Cela ne semble pas fonctionner sur une configuration multi-écran où vous étendez la barre des tâches
Erfan
1
Génial. Et Win + Shift + 1 parcourt les fenêtres à l'envers.
TranslucentCloud
24
Dans Windows 7 et 8, bien qu'il n'y ait aucun raccourci que je connaisse disponible uniquement à partir du clavier, vous pouvez le maintenir Ctrlen cliquant sur l'icône de la barre des tâches de l'application qui vous intéresse. À chaque fois que vous le faites, une fenêtre différente appartenant à cette application s'affiche venir au premier plan.
De plus, le programme VistaSwitcher configure Win+ F11et Alt+ `pour basculer entre les fenêtres de l'application actuelle. (BTW, son site Web dit que Windows 8 n'est pas pris en charge, mais j'ai eu de la chance avec lui sous 8.1; le seul problème que j'ai vu jusqu'à présent est qu'il répertorie parfois des choses comme la barre latérale de recherche en tant que fenêtres ouvertes. J'ignore simplement cela, mais YMMV.)
ÉNORME amélioration de la qualité de vie. Alors qu'un raccourci clavier dédié serait plus idéal, la solution WIN + # est sévèrement limitée par le nombre de clés, une mauvaise ergonomie et un délai terrible, sans parler de la création d'un conflit entre les raccourcis clavier accessibles (1-4) et l'emplacement souhaité de la barre de démarrage.
bpcookson
1
VistaSwitcher est magnifique. Merci pour la suggestion.
Dustin Oprea
Vous pouvez également ajouter des éléments à la liste d'exclusion comme la "Nouvelle notification" et "Cortana" sur Windows 10.
dragon788
1
j'aime le programme vista switcher.
Luke
1
ressemble au successeur de vistaswitcher, qui est nommé alt-tab terminatorn'a plus la fonctionnalité de
!`:: ; Next window
WinGetClass, ActiveClass, A
WinGet, WinClassCount, Count, ahk_class %ActiveClass%
IF WinClassCount = 1
Return
Else
WinGet, List, List, % "ahk_class " ActiveClass
Loop, % List
{
index := List - A_Index + 1
WinGet, State, MinMax, % "ahk_id " List%index%
if (State <> -1)
{
WinID := List%index%
break
}
}
WinActivate, % "ahk_id " WinID
return
!^`:: ; Last window
WinGetClass, ActiveClass, A
WinGet, WinClassCount, Count, ahk_class %ActiveClass%
IF WinClassCount = 1
Return
Else
WinGet, List, List, % "ahk_class " ActiveClass
Loop, % List
{
index := List - A_Index + 1
WinGet, State, MinMax, % "ahk_id " List%index%
if (State <> -1)
{
WinID := List%index%
break
}
}
WinActivate, % "ahk_id " WinID
return
Fonctionne très bien pour moi. En utilisant Autohotkey, j'ai également fait mes copier / coller / annuler, ... touches comme Mac. Fonctionne très bien!
Cela fonctionne très bien avec certaines mises en garde: 1) Pour Chrome, il fera défiler toutes les fenêtres de type Chrome, y compris les applications comme Slack! 2) Pour les applications modernes - et si vous n'avez qu'une seule fenêtre d'application moderne ouverte - cela ouvrira une autre application moderne aléatoire (c'est-à-dire si vous avez Calendrier ouvert et que c'est la seule application moderne ouverte, elle ouvrira "Paramètres", ou "Sports", ou "Mail", etc.)
Kirk Woll
@KirkWoll C'est vrai. Il y a certainement de la place pour l'améliorer. Je n'ai pas eu le temps de vraiment creuser dans Autohotkey pour y arriver ...
Seperman
Excellent travail, je l'ai utilisé tout de suite, merci. Quelques points: WinGet, Listrenvoie le nombre de fenêtres dans la Listvariable (par opposition au List%n%pseudo - tableau dans lequel les poignées sont stockées), vous pouvez donc ignorer l' WinGet, WinClassCountappel et vérifier à la Listplace. En outre, le code semble être identique pour les deux raccourcis clavier.
Lebenita
cela ne fonctionne pas avec moi sur Windows 10 64 bits et Microsoft Office 2016. pouvez-vous aider?
Luke
1
Cela fonctionne bien, cependant, il semble basculer entre TOUTES les fenêtres quel que soit le bureau. J'utilise beaucoup la vue des tâches et je dois parcourir les fenêtres sur le même bureau uniquement.
Petr
8
Merci, Erasmose, mais votre version du script autohotkey minimisera une fenêtre s'il n'y a pas d'autres fenêtres de ce type. Parfois, vous ne savez pas, et minimiser est une façon ennuyeuse de le savoir, j'ai donc modifié votre script comme suit:
!`:: ; 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
oh, et j'ai également changé la dernière classe pour utiliser shift au lieu de ctrl car c'est le modificateur pour revenir en arrière avec plusieurs autres raccourcis clavier. J'adore autohotkey.
Cool. J'ai mis à jour mon code en fonction du vôtre et également des commentaires que j'ai reçus sur le forum d'Autohotkey. Le nouveau code ne passera pas en revue les fenêtres réduites comme il est sur Mac.
Seperman
@Seperman et si je veux également parcourir les fenêtres réduites. Que dois-je changer dans votre script pour ce faire.
Ghos3t
Cela fonctionne bien, sauf qu'il ne se comportera pas correctement avec Chrome ou les applications basées sur Chrome / Electron (comme VS Code et Slack), car il passe en revue toutes.
otter.pro
Au lieu d'utiliser le nom de la classe de fenêtre, j'ai utilisé le nom du processus pour bien jouer avec les applications basées sur Electron et Firefox / Thunderbird. Script sur gist.github.com/snmishra/794c5f41693510c46ba9bedc839696a8
Satya Mishra le
7
Certaines applications qui implémentent MDI fournissent Ctrl + Tab pour basculer entre les "Documents" sous la même instance d'application. par exemple MS Office. Mais ce n'est pas une fonctionnalité Windows et dépend de l'application. Pour les autres logiciels, il existe différents raccourcis. Par exemple, Firefox ne fournit pas cette fonctionnalité mais il existe un module complémentaire qui ajoute la fonctionnalité.
Easy Window Switcher permet de basculer entre différentes fenêtres aussi facilement que alt+`(c'est-à-dire alt + backtick) comme sur un Mac. Oubliez d'avoir à choisir
alt+tabentre un million et une fenêtre ouverte différente pour trouver celle que vous recherchez, avec Easy Window Switcher, tabuler entre les fenêtres du même programme n'est qu'à une alt+`distance.
ne fonctionne pas "toujours". Si je travaille sur une autre application depuis un certain temps, revenez, cela cesse de fonctionner.
Dushyant Bangal
4
VistaSwitcher autorise ou pour cette fonctionnalité. Son compatible avec Windows 10, (bien que le nom suggère le contraire). Sur Windows 8 et versions ultérieures, je suggère d'ajouter certaines applications Metro à la liste d'exclusion.
La première réponse est bonne, mais ne fonctionne pas sur les configurations multi-écrans où la barre des tâches est configurée pour afficher uniquement les icônes sur le moniteur actif.
Win + n fonctionne sur mon système W7 avec plusieurs écrans et la barre des tâches ne s'affiche que sur le moniteur principal - est-ce ce que vous vouliez dire ou y a-t-il vraiment un moyen de faire basculer la barre des tâches sur le moniteur actuellement actif (ce qui, je suppose, serait distrayant) ?
(cette réponse a déjà été donnée par un autre utilisateur)
Pete Alvin
1
Avec AutoHotkey aussi, un comportement plus naturel:
; 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
J'ai créé un script AutoHotkey pour basculer entre les fenêtres de la même application qui fonctionnent avec les applications Windows standard , les raccourcis Chrome et les applications Chrome .
Dans ce dépôt Github, il existe un autre script AutoHotkey qui pourrait bien fonctionner en tandem avec celui-ci, car vous pourrez ouvrir, restaurer ou minimiser vos applications en utilisant les raccourcis clavier que vous souhaitez.
C'est la seule réponse qui fonctionne correctement sur Chrome, car elle ne traite pas la même application basée sur Chrome et Electron. Il fonctionne parfaitement sur Chrome, VS Code, Slack, etc. (Dans de rares cas, il ne fonctionnait pas correctement sur certaines applications comme Mintty / Cygwin, gVim et parfois sur Powershell, si le titre des fenêtres était modifié)
loutre. pro
0
J'ai créé un script AutoHotkey qui s'intègre parfaitement à Windows Task Switcher ( Alt+ Tab), offrant tous ses avantages: aperçus des fenêtres d'application, cliquez pour sélectionner, navigation par touches fléchées, activez uniquement la fenêtre unique que vous souhaitez. Appelez / naviguez avec Alt+ `et Alt+ Shift+ `(backtick) pour faire défiler les fenêtres ayant le même nom de processus que la fenêtre actuelle. Je trouve cela plus utilisable que Win+ numcar cela fonctionne pour n'importe quelle application (plutôt que de devoir se souvenir du numéro d'emplacement épinglé), les aperçus des fenêtres sont plus grands, l'arrière-plan n'est pas flou et se mélange parfaitement avec Alt+ Tabnavigation. Testé sur Windows 10.
L'astuce principale consiste à masquer temporairement les fenêtres d'applications non cibles du sélecteur de tâches en définissant WS_EX_TOOLWINDOWet en désactivant WS_EX_APPWINDOW. Pour définir ces styles de fenêtres sur des fenêtres exécutées en tant qu'administrateur, AutoHotkey doit être signé ou exécuté en tant qu'administrateur . J'ai suivi les instructions de signature très faciles ici .
Oops; nos modifications ont été croisées. J'ai essayé de remettre Humpty Dumpty à nouveau ensemble; veuillez vérifier que votre code est ce que vous vouliez qu'il soit.
Scott
0
En utilisant Autohotkey, voici ma version, qui fonctionne avec les applications Chrome et Electron. Il a été modifié à partir de la réponse de @ user332861 , afin de distinguer correctement les applications Chrome et Electron telles que Slack et Visual Studio Code. (Pour ce faire, il utilise ahk_exeau lieu 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
Simplifié de la réponse de @ otter.pro. Cela fait simplement défiler les fenêtres d'application en cours. Faire un pas en avant peut faire apparaître de brefs flashs d'autres fenêtres. Étant donné que ne pas voir les flashs est probablement plus important que le cycle bidirectionnel, ne faites pas de cycle vers l'avant. De plus, cette réponse autorise # `comme alternative à!` Puisque c'est la combinaison de touches pour le raccourci Mac.
Réponses:
S'il s'agit de l'une des dix premières applications de la barre des tâches, alors (Win)+ n, où n est son numéro de position, la sélectionnera et fera défiler les fenêtres. (Utilisez 0(zéro) pour la dixième application.) Par exemple, j'ai Windows Explorer et Internet Explorer épinglés comme les deux premières choses sur ma barre des tâches, donc je peux utiliser + 1pour parcourir mes répertoires et + 2pour parcourir mes navigateurs.
Quelques notes étranges:
Si vous appuyez et maintenez et tapez (et relâchez) un chiffre n, Windows ouvrira la n ième application dans la barre des tâches. Appuyez plusieurs fois sur n les fenêtres de ce programme, comme indiqué ci-dessus. Comme indiqué par TranslucentCloud , si vous tapez ensuite Shift+ n, il les parcourra dans l'ordre inverse, comme avec Alt+ Tab et Ctrl+ Tab, etc.
Si la n e application de la barre des tâches est épinglée mais ne fonctionne pas, + la nlancera.
la source
Dans Windows 7 et 8, bien qu'il n'y ait aucun raccourci que je connaisse disponible uniquement à partir du clavier, vous pouvez le maintenir Ctrlen cliquant sur l'icône de la barre des tâches de l'application qui vous intéresse. À chaque fois que vous le faites, une fenêtre différente appartenant à cette application s'affiche venir au premier plan.
De plus, le programme VistaSwitcher configure Win+ F11et Alt+ `pour basculer entre les fenêtres de l'application actuelle. (BTW, son site Web dit que Windows 8 n'est pas pris en charge, mais j'ai eu de la chance avec lui sous 8.1; le seul problème que j'ai vu jusqu'à présent est qu'il répertorie parfois des choses comme la barre latérale de recherche en tant que fenêtres ouvertes. J'ignore simplement cela, mais YMMV.)
la source
alt-tab terminator
n'a plus la fonctionnalité deVous pouvez utiliser AutoHotkey: www.autohotkey.com
Et mettez ce script là:
Fonctionne très bien pour moi. En utilisant Autohotkey, j'ai également fait mes copier / coller / annuler, ... touches comme Mac. Fonctionne très bien!
Époques
la source
WinGet, List
renvoie le nombre de fenêtres dans laList
variable (par opposition auList%n%
pseudo - tableau dans lequel les poignées sont stockées), vous pouvez donc ignorer l'WinGet, WinClassCount
appel et vérifier à laList
place. En outre, le code semble être identique pour les deux raccourcis clavier.Merci, Erasmose, mais votre version du script autohotkey minimisera une fenêtre s'il n'y a pas d'autres fenêtres de ce type. Parfois, vous ne savez pas, et minimiser est une façon ennuyeuse de le savoir, j'ai donc modifié votre script comme suit:
oh, et j'ai également changé la dernière classe pour utiliser shift au lieu de ctrl car c'est le modificateur pour revenir en arrière avec plusieurs autres raccourcis clavier. J'adore autohotkey.
la source
Certaines applications qui implémentent MDI fournissent Ctrl + Tab pour basculer entre les "Documents" sous la même instance d'application. par exemple MS Office. Mais ce n'est pas une fonctionnalité Windows et dépend de l'application. Pour les autres logiciels, il existe différents raccourcis. Par exemple, Firefox ne fournit pas cette fonctionnalité mais il existe un module complémentaire qui ajoute la fonctionnalité.
De plus, voici une liste des raccourcis clavier fournis dans Windows.
En outre, il existe des discussions sur les raccourcis clavier dans Windows.
J'espère que ça t'as aidé.
la source
Easy Windows Switcher de Neosmart fait exactement ce que vous recherchez.
Voici la description du site Web Easy Windows Switcher
la source
VistaSwitcher autorise ou pour cette fonctionnalité. Son compatible avec Windows 10, (bien que le nom suggère le contraire). Sur Windows 8 et versions ultérieures, je suggère d'ajouter certaines applications Metro à la liste d'exclusion.
La première réponse est bonne, mais ne fonctionne pas sur les configurations multi-écrans où la barre des tâches est configurée pour afficher uniquement les icônes sur le moniteur actif.
la source
En plus de ce que Scott ( https://superuser.com/users/150988/scott ) a partagé:
ctrl+ repeatedly click sur l'icône de l'application dans la barre des tâches fera également le travail.
la source
Avec AutoHotkey aussi, un comportement plus naturel:
la source
J'ai créé un script AutoHotkey pour basculer entre les fenêtres de la même application qui fonctionnent avec les applications Windows standard , les raccourcis Chrome et les applications Chrome .
https://github.com/JuanmaMenendez/AutoHotkey-script-Open-Show-Apps/blob/master/AutoHotkey-script-Switch-Windows-same-App.ahk
Supplémentaire
Dans ce dépôt Github, il existe un autre script AutoHotkey qui pourrait bien fonctionner en tandem avec celui-ci, car vous pourrez ouvrir, restaurer ou minimiser vos applications en utilisant les raccourcis clavier que vous souhaitez.
Exemple:
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/")
la source
J'ai créé un script AutoHotkey qui s'intègre parfaitement à Windows Task Switcher ( Alt+ Tab), offrant tous ses avantages: aperçus des fenêtres d'application, cliquez pour sélectionner, navigation par touches fléchées, activez uniquement la fenêtre unique que vous souhaitez. Appelez / naviguez avec Alt+ `et Alt+ Shift+ `(backtick) pour faire défiler les fenêtres ayant le même nom de processus que la fenêtre actuelle. Je trouve cela plus utilisable que Win+ numcar cela fonctionne pour n'importe quelle application (plutôt que de devoir se souvenir du numéro d'emplacement épinglé), les aperçus des fenêtres sont plus grands, l'arrière-plan n'est pas flou et se mélange parfaitement avec Alt+ Tabnavigation. Testé sur Windows 10.
L'astuce principale consiste à masquer temporairement les fenêtres d'applications non cibles du sélecteur de tâches en définissant
WS_EX_TOOLWINDOW
et en désactivantWS_EX_APPWINDOW
. Pour définir ces styles de fenêtres sur des fenêtres exécutées en tant qu'administrateur, AutoHotkey doit être signé ou exécuté en tant qu'administrateur . J'ai suivi les instructions de signature très faciles ici .Quelques discussions connexes qui ont contribué:
la source
En utilisant Autohotkey, voici ma version, qui fonctionne avec les applications Chrome et Electron. Il a été modifié à partir de la réponse de @ user332861 , afin de distinguer correctement les applications Chrome et Electron telles que Slack et Visual Studio Code. (Pour ce faire, il utilise
ahk_exe
au lieu deahk_class
)la source
Simplifié de la réponse de @ otter.pro. Cela fait simplement défiler les fenêtres d'application en cours. Faire un pas en avant peut faire apparaître de brefs flashs d'autres fenêtres. Étant donné que ne pas voir les flashs est probablement plus important que le cycle bidirectionnel, ne faites pas de cycle vers l'avant. De plus, cette réponse autorise # `comme alternative à!` Puisque c'est la combinaison de touches pour le raccourci Mac.
la source