Extensions de la barre des tâches

À partir de Windows 7, la barre des tâches a été considérablement étendue selon le principe directeur consistant à amener les utilisateurs là où ils vont aussi rapidement et efficacement que possible. À cette fin, les fenêtres d’application, les fichiers et les commandes que l’utilisateur doit accomplir et qui sont désormais centralisées dans un seul bouton de barre des tâches qui regroupe les sources d’informations et les contrôles précédemment dispersés. Un utilisateur peut désormais trouver des tâches courantes, des fichiers récents et fréquents, des alertes, des notifications de progression et des miniatures pour des documents ou des onglets individuels au même endroit.

Lancement et basculement unifiés

À partir de la barre des tâches de Windows 7, le lancement rapide n’est plus une barre d’outils distincte. Les raccourcis du lanceur que le lancement rapide contenait généralement sont désormais épinglés à la barre des tâches elle-même, combinés avec des boutons pour les applications en cours d’exécution. Lorsqu’un utilisateur démarre une application à partir d’un raccourci de lanceur épinglé, l’icône se transforme en bouton de barre des tâches de l’application tant que l’application est en cours d’exécution. Lorsque l’utilisateur ferme l’application, le bouton revient à l’icône. Toutefois, le raccourci du lanceur et le bouton de l’application en cours d’exécution ne sont que des formes différentes du bouton de la barre des tâches Windows 7.

Barre des tâches windows 7

Un petit ensemble d’applications est épinglé par défaut pour les nouvelles installations. En dehors de ceux-ci, seul l’utilisateur peut épingler d’autres applications ; l’épinglage programmatique par une application n’est pas autorisé.

La fonctionnalité Afficher le bureau du lancement rapide se trouve maintenant à l’extrême droite de la barre des tâches. En pointant sur cette zone, toutes les fenêtres actives deviennent transparentes, montrant le bureau. Cliquer sur la zone exécute l’action familière de réduire toutes les fenêtres et de basculer vers le bureau.

Pendant l’exécution de l’application, son bouton de barre des tâches devient l’emplacement unique pour accéder à toutes les fonctionnalités suivantes, chacune décrite en détail ci-dessous.

Le bouton de la barre des tâches peut représenter un lanceur, une fenêtre d’application unique ou un groupe. Un identificateur appelé ID de modèle utilisateur d’application (AppUserModelID) est affecté à chaque groupe. Un AppUserModelID peut être spécifié pour remplacer le regroupement de la barre des tâches standard, ce qui permet aux fenêtres de devenir membres du même groupe lorsqu’elles ne peuvent pas être considérées comme telles. Chaque membre d’un groupe reçoit un aperçu distinct dans le menu volant miniature qui s’affiche lorsque la souris pointe sur le bouton de la barre des tâches du groupe. Notez que le regroupement proprement dit reste facultatif.

À partir de Windows 7, les boutons de la barre des tâches peuvent désormais être réorganisés par l’utilisateur via des opérations de glisser-déplacer.

Notes

Le dossier Lancement rapide (FOLDERID_QuickLaunch) est toujours disponible pour la compatibilité descendante, même s’il n’existe plus d’interface utilisateur de lancement rapide. Toutefois, les nouvelles applications ne doivent pas demander d’ajouter une icône au lancement rapide lors de l’installation.

 

Pour plus d’informations, consultez ID de modèle utilisateur d’application (AppUserModelIDs).

Listes de raccourcis

Un utilisateur lance généralement un programme avec l’intention d’accéder à un document ou d’effectuer des tâches dans le programme. L’utilisateur d’un programme de jeu peut vouloir accéder à un jeu enregistré ou lancer en tant que personnage spécifique plutôt que de redémarrer un jeu dès le début. Pour permettre aux utilisateurs d’atteindre plus efficacement leur objectif final, une liste de destinations et de tâches courantes associées à une application est jointe au bouton de la barre des tâches de cette application (ainsi qu’à l’entrée de menu Démarrer équivalente). Il s’agit de la liste de raccourcis de l’application. La liste de raccourcis est disponible, que le bouton de la barre des tâches soit dans un état de lanceur (l’application n’est pas en cours d’exécution) ou qu’il représente une ou plusieurs fenêtres. Cliquer avec le bouton droit sur le bouton de la barre des tâches affiche la liste de raccourcis de l’application, comme illustré dans l’illustration suivante.

liste de raccourcis avec les catégories épinglées, fréquentes et tâches

Par défaut, une liste de raccourcis standard contient deux catégories : les éléments récents et les éléments épinglés, bien que, étant donné que seules les catégories avec du contenu sont affichées dans l’interface utilisateur, aucune de ces catégories ne s’affiche lors du premier lancement. Une icône de lancement d’application (pour lancer d’autres instances de l’application), une option pour épingler ou détacher l’application de la barre des tâches et une commande Fermer pour toutes les fenêtres ouvertes sont toujours présentes.

Destinations

Les catégories Récent et Fréquent sont considérées comme contenant des destinations. Une destination, généralement un fichier, un document ou une URL, est un élément qui peut être modifié, parcouru, affiché, etc. Considérez une destination comme une chose plutôt qu’une action. En règle générale, une destination est un élément de l’espace de noms Shell, représenté par un IShellItem ou un IShellLink. Ces parties de la liste de destination sont analogues à la liste des documents récemment utilisés du menu Démarrer (qui n’est plus affichée par défaut) et à la liste des applications fréquemment utilisées, mais elles sont spécifiques à une application et sont donc plus précises et utiles pour l’utilisateur. Les résultats utilisés dans la liste de destination sont calculés par le biais d’appels à SHAddToRecentDocs. Notez que lorsque l’utilisateur ouvre un fichier à partir de Windows Explorer ou utilise la boîte de dialogue commune de fichier pour ouvrir, enregistrer ou créer un fichier, SHAddToRecentDocs est automatiquement appelé pour vous, ce qui entraîne l’affichage de leurs éléments récents dans la liste de destination par de nombreuses applications sans aucune action de leur part.

Le lancement d’une destination ressemble beaucoup au lancement d’un élément à l’aide de la commande Ouvrir avec . L’application démarre avec cette destination chargée et prête à être utilisée. Les éléments de la liste de destination peuvent également être déplacés de la liste vers une destination de suppression telle qu’un message électronique. En ayant ces éléments centralisés dans une liste de destination, il permet aux utilisateurs d’atteindre l’endroit où ils veulent aller beaucoup plus rapidement, ce qui est l’objectif.

Lorsque les éléments apparaissent dans la catégorie Récent d’une liste de destination (ou la catégorie Fréquente ou une catégorie personnalisée , comme décrit dans une section ultérieure), un utilisateur peut souhaiter s’assurer que l’élément figure toujours dans la liste pour un accès rapide. Pour ce faire, il peut épingler cet élément à la liste, ce qui ajoute l’élément à la catégorie épinglée . Lorsqu’un utilisateur travaille activement avec une destination, il le souhaite facilement à portée de main et l’épingle donc à la liste des destinations de l’application. Une fois le travail de l’utilisateur terminé, il ou elle désépine simplement l’élément. Ce contrôle utilisateur garde la liste épurée et pertinente.

Une liste de destination peut être considérée comme une version spécifique à l’application du menu Démarrer . Une liste de destination n’est pas un menu contextuel. Chaque élément d’une liste de destination peut faire l’objet d’un clic droit pour accéder à son propre menu contextuel.

API

Tâches

Une autre partie intégrée d’une liste de raccourcis est la catégorie Tâches . Bien qu’une destination soit une chose, une tâche est une action, et dans ce cas, il s’agit d’une action spécifique à l’application. Autrement dit, une destination est un nom et une tâche est un verbe. En règle générale, les tâches sont des éléments IShellLink avec des arguments de ligne de commande qui indiquent des fonctionnalités particulières qui peuvent être déclenchées par une application. Là encore, l’idée est de centraliser autant d’informations liées à une application que possible.

Les applications définissent des tâches en fonction des fonctionnalités du programme et des éléments clés qu’un utilisateur est censé en faire. Les tâches doivent être sans contexte, car l’application n’a pas besoin d’être en cours d’exécution pour qu’elles fonctionnent. Il s’agit également des actions statistiquement les plus courantes qu’un utilisateur normal effectuerait dans une application, telles que composer un e-mail ou ouvrir le calendrier dans un programme de messagerie, créer un document dans un traitement de texte, lancer une application dans un certain mode ou lancer l’une de ses sous-commandes. Une application ne doit pas encombrer le menu de fonctionnalités avancées dont les utilisateurs standard n’auront pas besoin ou d’actions ponctuelles telles que l’inscription. N’utilisez pas de tâches pour des éléments promotionnels tels que des mises à niveau ou des offres spéciales.

Il est vivement recommandé que la liste des tâches soit statique. Elle doit rester la même, quel que soit l’état ou la status de l’application. Bien qu’il soit possible de faire varier la liste dynamiquement, vous devez considérer que cela risque d’embrouiller l’utilisateur qui ne s’attend pas à ce que cette partie de la liste de destination change.

API

Personnalisation de listes de raccourcis

Une application peut définir ses propres catégories et les ajouter en plus ou à la place des catégories Standard Recent et Frequent dans une liste de raccourcis. L’application peut contrôler ses propres destinations dans ces catégories personnalisées en fonction de l’architecture de l’application et de l’utilisation prévue. La capture d’écran suivante montre une liste de raccourcis personnalisée avec une catégorie Historique.

liste de raccourcis personnalisée

Si une application décide de fournir une catégorie personnalisée, elle assume la responsabilité de la remplir. Le contenu de la catégorie doit toujours être spécifique à l’utilisateur et basé sur l’historique utilisateur, les actions ou les deux, mais par le biais d’une catégorie personnalisée, une application peut déterminer ce qu’elle souhaite suivre et ce qu’elle souhaite ignorer, peut-être en fonction d’une option d’application. Par exemple, un programme audio peut choisir d’inclure uniquement les albums récemment lus et d’ignorer les pistes individuelles récemment lues.

Si un utilisateur a supprimé un élément de la liste, qui est toujours une option utilisateur, l’application doit le respecter. L’application doit également s’assurer que les éléments de la liste sont valides ou qu’ils échouent correctement s’ils ont été supprimés. Des éléments individuels ou l’ensemble du contenu de la liste peuvent être supprimés par programmation.

Le nombre maximal d’éléments dans une liste de destination est déterminé par le système en fonction de différents facteurs tels que la résolution d’affichage et la taille de police. S’il n’y a pas assez d’espace pour tous les éléments de toutes les catégories, ils sont tronqués de bas en haut.

API

Barres d’outils miniatures

Pour fournir l’accès aux commandes de clé d’une fenêtre particulière sans que l’utilisateur restaure ou active la fenêtre de l’application, un contrôle de barre d’outils actif peut être incorporé dans l’aperçu miniature de cette fenêtre. Par exemple, Lecteur multimédia Windows peut proposer des contrôles de transport multimédia standard tels que lire, suspendre, désactiver et arrêter. L’interface utilisateur affiche cette barre d’outils directement sous la miniature, comme illustré dans l’illustration suivante. Elle ne couvre aucune partie de celle-ci.

barre des tâches miniatures pour le lecteur Windows Media, avec trois boutons : retour, lecture et avant

Cette barre d’outils est simplement le contrôle courant de barre d’outils standard. Il a un maximum de sept boutons. L’ID, l’image, l’info-bulle et l’état de chaque bouton sont définis dans une structure, qui est ensuite passée à la barre des tâches. L’application peut afficher, activer, désactiver ou masquer des boutons de la barre d’outils miniatures en fonction de son état actuel.

Étant donné que l’espace d’affichage des miniatures et un nombre variable de miniatures à afficher sont limités, les applications ne sont pas garanties d’une taille de barre d’outils donnée. Si l’espace est restreint, les boutons de la barre d’outils sont tronqués de droite à gauche. Par conséquent, lorsque vous concevez votre barre d’outils, vous devez hiérarchiser les commandes associées à vos boutons et vous assurer que les commandes les plus importantes viennent en premier et sont les moins susceptibles d’être supprimées en raison de problèmes d’espace.

Notes

Lorsqu’une application affiche une fenêtre, son bouton de barre des tâches est créé par le système. Lorsque le bouton est en place, la barre des tâches envoie un message TaskbarButtonCreated à la fenêtre. Sa valeur est calculée en appelant RegisterWindowMessage(L(« TaskbarButtonCreated »)). Ce message doit être reçu par votre application avant d’appeler une méthode ITaskbarList3 .

 

API

Superpositions d’icônes

Une application peut communiquer certaines notifications et status à l’utilisateur via son bouton de barre des tâches par l’affichage de petites superpositions sur le bouton. Ces superpositions sont similaires au type de superposition existant utilisé pour les raccourcis ou les notifications de sécurité, affiché dans le coin inférieur droit du bouton. Pour afficher une icône de superposition, la barre des tâches doit être en mode icône grande par défaut, comme illustré dans la capture d’écran suivante.

Bouton de la barre des tâches windows Messenger avec une superposition pour indiquer un status disponible

Les superpositions d’icônes servent de notification contextuelle de status et sont destinées à supprimer la nécessité d’une zone de notification distincte status icône pour communiquer ces informations à l’utilisateur. Par instance, la nouvelle status de courrier dans Microsoft Outlook, actuellement affichée dans la zone de notification, peut désormais être indiquée par le biais d’une superposition sur le bouton de la barre des tâches. Là encore, vous devez décider au cours de votre cycle de développement de la méthode la mieux adaptée à votre application. Les icônes de superposition sont destinées à fournir des status ou des notifications importantes et de longue date, telles que les status réseau, les status de messagerie ou les nouveaux messages électroniques. Les superpositions ou les animations qui changent constamment ne doivent pas être présentées à l’utilisateur.

Étant donné qu’une seule superposition est superposée sur le bouton de la barre des tâches et non sur les miniatures de fenêtre individuelles, il s’agit d’une fonctionnalité par groupe plutôt que par fenêtre. Les demandes d’icônes de superposition peuvent être reçues à partir de fenêtres individuelles d’un groupe de barre des tâches, mais elles ne sont pas en file d’attente. La dernière superposition reçue est la superposition affichée.

API

Barres de progression

Un bouton de barre des tâches peut être utilisé pour afficher une barre de progression. Cela permet à une fenêtre de fournir des informations de progression à l’utilisateur sans que cet utilisateur ait à basculer vers la fenêtre elle-même. L’utilisateur peut rester productif dans une autre application tout en voyant en un coup d’œil la progression d’une ou plusieurs opérations se produisant dans d’autres fenêtres. Il est prévu qu’une barre de progression dans un bouton de barre des tâches reflète un indicateur de progression plus détaillé dans la fenêtre elle-même. Cette fonctionnalité peut être utilisée pour suivre les copies de fichiers, les téléchargements, les installations, la gravure multimédia ou toute opération qui prendra un certain temps. Cette fonctionnalité n’est pas destinée à être utilisée avec des actions normalement périphériques telles que le chargement d’une page web ou l’impression d’un document. Ce type de progression doit continuer à être affiché dans la barre de status d’une fenêtre.

La barre de progression du bouton de la barre des tâches est une expérience similaire au contrôle barre de progression familier. Il peut afficher la progression déterminée en fonction d’un pourcentage terminé de l’opération ou d’une progression indéterminé de style marque pour indiquer que l’opération est en cours sans aucune prédiction de temps restant. Il peut également montrer que l’opération est suspendue ou a rencontré une erreur et nécessite l’intervention de l’utilisateur.

API

Deskbands

Dans les versions de Windows antérieures à Windows 7, une fonctionnalité similaire à la fonctionnalité de barre d’outils miniatures peut être obtenue via un deskband, une barre d’outils hébergée dans la barre des tâches. Par instance, Lecteur multimédia Windows peut réduire la barre des tâches en tant qu’ensemble de contrôles de transport plutôt qu’en tant que bouton standard. Dans Windows 7, les bandes de bureau peuvent toujours être implémentées et les barres d’outils miniatures ne sont pas destinées à les remplacer toutes. Toutes les applications ne se prêtent pas à une barre d’outils miniatures, et une autre solution telle qu’un bandeau de bureau ou une tâche dans une liste de destination peut être la bonne réponse pour votre application ; vous devez choisir la solution qui convient le mieux à votre application dans le cadre de votre cycle de développement. Toutefois, n’oubliez pas que les deskbands doivent prendre en charge Windows Aero avec la translucidité (« verre ») activée et l’interface IDeskBand2 .

API

Zone de notification

Des modifications ont été apportées à la zone de notification qui permettent à l’utilisateur de mieux contrôler les icônes qui apparaissent dans la barre des tâches. Toutes les icônes de notification sont désormais masquées par défaut et cette visibilité ne peut pas être contrôlée par programmation. Seul l’utilisateur est autorisé à choisir les icônes de notification qui s’affichent dans la barre des tâches. Lorsqu’une bulle de notification s’affiche, l’icône devient temporairement visible, mais même dans ce cas, un utilisateur peut choisir de les faire taire. Une superposition d’icônes sur un bouton de barre des tâches devient donc un choix attrayant lorsque vous souhaitez que votre application communique ces informations à vos utilisateurs.

Miniatures

Dans Windows Vista, le pointage sur le bouton de la barre des tâches d’une application affiche une miniature qui représente la fenêtre en cours d’exécution. Si la barre des tâches a réduit les fenêtres de l’application, la miniature le représente sous la forme d’une pile, mais seule la fenêtre active s’affiche dans la miniature elle-même.

Dans Windows 7, chaque membre d’un groupe s’affiche sous la forme d’une miniature distincte et est désormais également une cible de commutateur. Une application peut définir ses enfants (par exemple, de véritables fenêtres enfants, des documents individuels ou des onglets) et fournir des miniatures correspondantes pour chacune de ces fenêtres, même si elles n’apparaissent normalement pas dans la barre des tâches. Cela permet aux utilisateurs de basculer directement dans l’affichage de l’application qu’ils souhaitent plutôt que de basculer vers l’application et de basculer vers leur destination. Par exemple, les applications multi-document interface (MDI)/tabbed-document interface (TDI) peuvent afficher chaque document ou onglet sous la forme d’une miniature distincte et basculer la cible lorsque la souris pointe sur le bouton de la barre des tâches d’un groupe.

trois miniatures de la barre des tâches qui représentent des onglets individuels dans Windows Internet Explorer

Notes

Comme dans Windows Vista, Aero doit être actif pour afficher les miniatures.

 

API

Les représentations miniatures pour les fenêtres sont normalement automatiques, mais dans les cas où le résultat n’est pas optimal, la miniature peut être spécifiée explicitement. Par défaut, seules les fenêtres de niveau supérieur ont une miniature générée automatiquement pour elles, et les miniatures des fenêtres enfants apparaissent comme une représentation générique. Cela peut entraîner une expérience moins qu’idéale (et même confuse) pour l’utilisateur final. Une miniature cible de commutateur spécifique pour chaque fenêtre enfant, pour instance, offre une expérience utilisateur bien meilleure.

API

Vous pouvez sélectionner une zone particulière de la fenêtre à utiliser comme miniature. Cela peut être utile lorsqu’une application sait que ses documents ou onglets sont similaires lorsqu’ils sont affichés à la taille de la miniature. L’application peut ensuite choisir d’afficher uniquement la partie de sa zone cliente que l’utilisateur peut utiliser pour faire la distinction entre les miniatures. Toutefois, le fait de pointer sur n’importe quelle miniature affiche une vue de la fenêtre complète derrière elle afin que l’utilisateur puisse y jeter un coup d’œil rapidement.

S’il y a plus de miniatures que peut être affiché, l’aperçu revient à la miniature héritée ou à une icône standard.

API

Pour ajouter Épingler à la barre des tâches au menu contextuel d’un élément, ce qui est normalement nécessaire uniquement pour les types de fichiers qui incluent l’entrée IsShortCut , vous devez inscrire le gestionnaire de menu contextuel approprié. Cela s’applique également à Épingler au menu Démarrer. Pour plus d’informations, consultez Inscription des gestionnaires d’extensions shell.

Barre des tâches

ID de modèle utilisateur d’application (AppUserModelIDs)

Notifications et zone de notification