Bonjour
Je vais vous présenter une petite astuce que j'utilise dans toutes mes applications Access et qui permet :
1 - D'avoir un bouton avec des couleurs
2 - De mettre une image sur ce bouton et du texte
3 - D'avoir un curseur différent quand la souris survole ce bouton
Il doit y en avoir beaucoup qui connaissent cette astuce (surtout pour les utitisateurs des UserForms sur Excel)
J'utilise le bouton de commande MS Forms 2.0 CommandButton.
Pour mettre ce contrôle sur un formulaire, quand vous êtes en mode création, sélectionner dans la liste des contrôle Active X : Microsoft Forms 2.0 CommandButton. Ce contrôle est normalement installé en standard (je l'ai utilisé sur les versions 2000, 2002 et 2003).
1 - Couleur :
Ce bouton posséde une propriété Backcolor. Cepdendant lorsque vous êtes dans l'éditeur VBA, celui-ci ne s'affiche pas dans la liste, il faut entièrement le taper.
Me.cmdFermer.BackColor = RGB(200, 200, 255)
Vous pouvez également utiliser les constantes VB (vbWhite, ...). Ce code est à mettre sur l'ouverture du formulaire.
2 - Image + Texte
Ce bouton vous permet également d'avoir une image et du texte (contrairement au bouton Access qui ne permet qu'un des deux à la fois).
Pour cela il faut que votre bouton soit assez haut pour tout voir.
Voici un exemple de code
1 2 3 4
| With Me.CommandButton0
.Picture = LoadPicture(Application.CurrentProject.Path & "\Data\turup.gif")
.Caption = "Le Texte"
End With |
Si vous ne voyez pas le texte agrandissez votre bouton en hauteur. Ce bouton a une propriété qui est PicturePosition, celle-ci se trouve dans l'onglet "Toutes" de la fenêtre des propriétés (en bas), cela vous permet de positionner votre image par rapport au texte. Ce code est à mettre sur l'ouverture du formulaire.
3 - Le curseur
Dans Windows vous avez un curseur qui s'appelle Harrow.cur, celui-ci représente une main. Je le copie toujours dans un répertoire (Data) situé dans le même répertoire que la base.
Ce qui me permet d'utiliser le code suivant
1 2 3 4
| With Me.CommandButton0
.MousePointer = 99
.MouseIcon = LoadPicture(Application.CurrentProject.Path & "\Data\Harrow.cur")
End With |
Ainsi quand la souris survole le bouton une main apparait, ce code est à mettre sur l'ouverture du formulaire.
Voilà, je pense que ces petites astuces (pour ceux qui ne connaissent pas), donneront un peu plus de cachet à vos applis.
Remarque : A partir de la version d'Access 2003, vous avez la possibilités d'avoir des boutons à la forme Windows XP. Par contre ce bouton restera malheureusement avec des angles vifs et non arrondis.
De plus je voulais dire que beaucoup utilisent un label pour simuler un bouton de couleur (c'est ce que je faisais au début), l'inconvénient c'est que l'on ne pouvait faire de focus dessus, et qu'il fallait jouer sur l'apparence lors des click pour pouvoir avoir l'aspect d'un bouton.
Starec
Partager