INF : Comment changer la taille de la barre de tâches

Exclusion de responsabilité du contenu obsolète de la base de connaissances

Cet article a été rédigé sur les produits pour lesquels Microsoft n’offre plus aucune prise en charge. Par conséquent, cet article est proposé « en l’état » et ne sera plus mis à jour.

Symptômes


Comment changer la taille de la barre de tâches du système ?


Résolution


Vous pouvez utiliser le code suivant :

RECT rc;
APPBARDATA abd;

abd.cbSize = sizeof(abd);

// récupération du handle de la barre de taches
HWND hWndShell = ::FindWindow( "Shell_TrayWnd", 0 );

// récupération de l'ancienne position de la barre de taches
// (dans le champ abd.rc)
SHAppBarMessage(ABM_GETTASKBARPOS, &abd);

// modification de la hauteur de la barre de tache par exemple
// dans l'exemple, on considére que la barre de tâches se trouve en bas
// de l'écran
rc.top=abd.rc.top -15;
rc.bottom=abd.rc.bottom;
rc.left=abd.rc.left;
rc.right=abd.rc.right;

// envoi du message WM_SIZING pour indiquer que la barre de tache va être
// modifiée
// le paramêtre wParam correspond au coté modifié (ici c'est le
// coté haut de la barre qui est modifié)
// le paramêtre lParam correspond à la nouvelle taille
::SendMessage(hWndShell,WM_SIZING,(WPARAM)WMSZ_TOP,(LPARAM)&rc);

// changement de la position
::SetWindowPos(hWndShell,NULL,rc.top,rc.bottom,0,0, SWP_NOSIZE | SWP_NOZORDER
|SWP_DRAWFRAME);
Propriétés

ID d'article : 467650 - Dernière mise à jour : 21 oct. 1998 - Révision : 1

Commentaires