J'ai besoin de savoir si la barre des tâches Windows est cachée ou non. Je crois qu'il n'y a pas de méthode .net pour le faire, et aussi j'ai rencontré des échantillons de "comment cacher et d'afficher la barre des tâches", mais je n'ai rien vu de manière basée sur ce que je cherche. Je ne connais pas l'API Windows, je trouve donc difficile de comprendre le code Windows traditionnel. Quelqu'un peut-il me diriger à un article ou à un code de type indiquant si l'état actuel de la barre des tâches est caché ou non? Je codis dans C #. P>
merci. p>
4 Réponses :
winSharp93 présente une classe d'assistance (" Découvrez la taille (et la position) de la barre des tâches ») qui semble fonctionner. Il utilise Win32's fonction ShappBarmessage .
Voici Le code (avec des ajouts mineurs) de son blog: p> L'auteur affirme qu'il fonctionne sur sa machine Windows 7 et il semble fonctionner sur ma machine XP Pro. p> Voici comment vous pouvez l'utiliser: p> où: tb.size.width and tb.size.height renvoie la largeur et la hauteur de la barre des tâches , et tb.autohide retourne true si la barre des tâches est cachée et false si elle n'est pas. P> p>
SystemParameTersInfo avec SPI_GETWORKAREA P>
récupère la taille de la zone de travail sur le moniteur d'affichage principal. La zone de travail est la partie de l'écran non masquée par la barre des tâches système ou par des barres d'outils de bureau d'application. Le paramètre PVPARAM doit pointer sur une structure recouverte qui reçoit les coordonnées de la zone de travail, exprimée dans les coordonnées d'écran virtuel. P>
Pour obtenir la zone de travail d'un moniteur autre que le moniteur d'affichage principal, appelez la fonction GetMonitorInfo. P>
Toutes les solutions que j'ai trouvées ne fonctionnaient pas pour moi, alors j'avais une idée de Follwing et ça marche très bien pour moi. S'ils sont différents, la barre des tâches est affichée. P> P>