Dans Windows Vista il y a plusieurs boutons avec un icône représentant un bouclier (Shield Icon). Voici comment le faire afficher.
La façon la plus facile est de passer par la macro, elle disponible dans C++Builder 2007:
	
	Button_SetElevationRequiredState(Button1->Handle, true);
 Sinon, il y a toujours moyen d'utiliser un envoie de message:
	
	SendMessage(Button1->Handle, BCM_SETSHIELD, 0, TRUE);
 Dans les deux cas la valeur de retour est 1 s'il n'y a pas d'erreur.
L'entête nécessaire est Commctrl.h, mais avec C++Builder vous n'avez pas besoin de l'inclure.
Si BCM_SETSHIELD n'est pas défini vous pouvez le faire avec le code suivant:
	
	#define BCM_SETSHIELD   0x160C
 Bien sûr, il faudrait mettre l'icône seulement si une élévation de droit est nécessaire. Cette commande fonctionne seulement avec Windows Vista, mais il n'y a pas de problème à l'utiliser dans d'autre système d'exploitation.
						
					
Partager