Un UserForm avec du style

Bonjour le forum et à tous les curieux

Je vous propose 3 petites astuces que j'utilise pour rendre mes projets plus "pro".

  1. Ajouter une bande colorée sous le contrôle ayant le focus
  2. Avoir le nom du champ directement dans le champ
  3. Utiliser des Label comme bouton

Illustration avant personnalisation :

capture d ecran 2025 11 24 110648

Illusation après personnalisation :

enregistrement 2025 11 24 131015


Fonctionnement pour la bande colorée sous le contrôle ayant le focus : le programma va créer dynamiquement, pour chacun des TextBox et ComboBox, une bande de couleur (vous pouvez modifier la couleur, la taille ou la position à votre guise). La bande focus apparait et disparait automatiquement en fonction du controle ayant le focus. La création de cette bande focus est géré par la fonction addFocusVisu. Malheuresement, il est impossible de récupérer les évènements publique "Enter" et "Exit" d'un contrôle pour l'intégrer dans un module de classe, ce qui veux dire que vous devrez rajouter pour chacun des contrôles une fonction personnalisée, exemple pour le ComboBox1 :

image

L'ensemble des actions "Enter" et "Exit" sont centralisées dans ces deux fonctions pour gérer l'affichage ou nom de la bande focus

capture d ecran 2025 11 24 112926

Fonctionnement pour le nom du champ : En fonction de si le contrôle contient une valeur ou nom, le nom du champ apparaît ou nom. Vous devrez utiliser au préalable le paramètre "Tag" des champs pour stocker le nom :

image

L'affichage ou nom du champ est possible grace à l'ajout dynamique d'un contrôle "doublon" en transparence sous le contrôle d'origine. C'est ce contrôle qui va afficher ou nom le nom du champ. La création de ces contrôles d'affichage du nom des champs est géré par la fonction addFocusName , pour ce qui est de l'affichage ou non, c'est le module de classe ClsCtrlEvents qui s'en charge.

A noter que addFocusVisu et addFocusName sont dans le module standard styleConfig

Utiliser un Label à la place d'un Bouton : Le fait d'utiliser un Label à la place d'un Bouton vous permet d'avoir plus de personnalisation possible qu'un simple bouton classique. Pour vous rapprocher le plus possible d'un style de bouton, vous devrez utiliser un icône de souris personnalisé (la petite main) et un .gif transparent de x1 pixel pour centrer le texte verticalement et horizontalement. (Vous trouverez dans le dossier .zip l'icone de la main ainsi que le x1 pixel transparant).

image

Pour parfaire le style de votre UserForm : Je vous conseille fortement d'utiliser des couleurs personnalisées et des polices d'écriture moderne tout en faisant varier la taille de la police en fonction des titres, sous-titres, du texte ou d'un message d'information. Je vous conseille aussi d'utiliser des illustrations et icônes pour rendre votre interface la plus moderne possible.

Voilà ce que je peux vous apporter, n'hésitez pas à poser des questions et/ou à partager vos astuces desing

22demo.zip (81.46 Ko)
Rechercher des sujets similaires à "userform style"