96 votes

Épingler des applications à plusieurs bureaux dans Windows 10

L'une des grandes nouveautés de Windows est la prise en charge native de plusieurs bureaux "virtuels", qui vous permettent d'organiser des collections de Windows ensemble et de séparer des groupes de tâches.

C'est bien.

Vous pouvez déplacer Windows d'un bureau à l'autre en cliquant sur le bouton "tâches", puis en faisant un clic droit sur la fenêtre d'une application et en sélectionnant "Déplacer vers...".

C'est un peu maladroit et pas très bon.

J'ai deux moniteurs et j'aime souvent avoir un film en cours de lecture sur mon deuxième moniteur, soit dans un navigateur web ou un lecteur multimédia, tandis que j'ai un navigateur et quelques autres applications sur l'écran principal. Cela ne pose aucun problème dans ma configuration actuelle, cela fonctionne tout simplement.

Avec l'avènement des bureaux virtuels, je souhaitais placer le navigateur sur un bureau virtuel et une autre application sur un autre bureau virtuel, tout en étant capable de regarder la vidéo lorsque je change de bureau, en la rendant visible sur le bureau virtuel. les deux bureaux virtuels. Si vous utilisez l'application Film & TV par défaut pour lire une vidéo et que vous passez ensuite à un autre bureau, la vidéo s'arrête sans aucun avertissement.

Ce n'est pas bon.

J'espérais que les deux moniteurs auraient leur propre bureau virtuel ou qu'il y aurait une option "épingler à tous les bureaux" similaire à la fonction "fenêtre collante" que j'ai vue dans de nombreux gestionnaires de fenêtres sous Linux.

Y a-t-il un moyen d'y parvenir ?

125voto

Jason Points 5685

La fonctionnalité a maintenant été publiée comme l'une des plusieurs "Amélioration du bureau virtuel" dans le Mise à jour anniversaire de Windows 10 (Build 14316) :

Vous pouvez désormais épingler une fenêtre afin qu'elle soit disponible sur tous les bureaux. Pour ce faire, lancez Task View, puis cliquez avec le bouton droit de la souris sur la fenêtre que vous souhaitez épingler et choisissez "Afficher cette fenêtre sur tous les bureaux". Essayez d'épingler Skype ou Groove Music pour qu'ils soient toujours à portée de main. Et si vous avez une configuration à plusieurs moniteurs, vous apprécierez peut-être la possibilité d'avoir votre application de messagerie sur le deuxième moniteur, quel que soit le bureau sur lequel vous basculez.

enter image description here

20voto

IDj Points 301

Oui, [presque :)] Chaque fenêtre avec l'attribut WS_EX_TOOLWINDOW est visible sur tous les bureaux.

Autohotkey est d'une grande aide à cet égard. Exemple script - MyLoop.ahk :

WS\_EX\_TOOLWINDOW := 0x00000080
Loop
{
   WinSet, ExStyle, +%WS\_EX\_TOOLWINDOW%, ahk\_class Chrome\_WidgetWin\_1
   Sleep,100
}

Placez ce programme au démarrage de Windows et la fenêtre Google Chrome "collera" à tous les bureaux virtuels.

Ou assignez ceci comme une touche de raccourci : Exemple script - MyHotkeys.ahk :

WS\_EX\_TOOLWINDOW := 0x00000080
+MButton::WinSet, ExStyle, ^%WS\_EX\_TOOLWINDOW%, A
^MButton::WinSet, AlwaysOnTop, toggle, A

Placez ce programme au démarrage de Windows et vous pouvez modifier l'état "collant" de n'importe quelle fenêtre en appuyant sur Shift et en cliquant sur le bouton central.

Touche supplémentaire - Ctrl+clic sur le bouton du milieu permet de basculer l'état "le plus haut". Très utile.

PS : les applications modernes (par exemple la calculatrice de Windows 10) ignorent en quelque sorte cela. Je ne sais pas pourquoi. Mais pour la fenêtre de l'explorateur de Windows et la plupart des "anciennes applications", cela fonctionne très bien.

1voto

Noitidart Points 214

En se basant sur la solution de @idj ci-dessus, voici comment le faire en C :

exstyle = GetWindowLongPtr(hwndPtr, GWL_EXSTYLE);
exstyle |= WS_EX_TOOLWINDOW
SetWindowLongPtr(hwndPtr, GWL_EXSTYLE, exstyle);

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X