Couleur barre titre Usf

  • Initiateur de la discussion Initiateur de la discussion Zeltron
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Z

Zeltron

Guest
Bonjour à tout le Forum,

En cherchant sur le site, notamment dans les archives ( mots de recherche: couleur USF), j'ai trouvé le fil qui répondait à ma question: comment changer la couleur ( par défaut bleue) de la barre de Titre d'un USF?

J'ai donc mis les codes suivants:

Dans un module ( Module1):

Declare Function SetSysColors Lib 'user32' (ByVal nChanges _
As Long, lpSysColor As Long, lpColorValues As Long) As Long
Public Const COLOR_ACTIVECAPTION = 2

Dans le code du userform:

Dim OldColor As Long

'-----------------
Private Sub Form_Load()
MaCouleur
End Sub

'-----------------
Private Sub Form_Unload(Cancel As Integer)
SetSysColors 1, COLOR_ACTIVECAPTION, OldColor
End Sub
'-----------------

Sub MaCouleur()
OldColor = GetSysColor(COLOR_ACTIVECAPTION)
SetSysColors 1, COLOR_ACTIVECAPTION, RGB(255, 0, 0)
End Sub


Cependant, rien n'y fait, il n' y à pas de blocage, le usf s'affiche bien mais la barre de titre reste toujours bleue. J'ai essayé de changer le code RGB, mais rien n'y fait.

Me suis je tromper dans l'emplacement des codes? D'où vient le pb?

Pouvez vous m'aider?

Je vous joint le fichier en question.

Vous remerciant par avance si vous vous penchez sur mon problème.

Cordialement

Zeltron [file name=coultitreusf.zip size=11013]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/coultitreusf.zip[/file]
 

Pièces jointes

Eh oui, c'est le problème quand on reprend du code pas tout à fait adapté. Dans ton cas, ce code fonctionnera (à la rigueur) dans un programme VB, mais pas en VBA. Il faut donc l'adapter un peu. D'autre part, l'utilisation de SetSysColor ne fonctionnera pas pour modifier la couleur de titre dans XP, si tu utilise un des styles par défaut d'XP parce qu'il n'utilise pas une couleur simple mais des couleurs combinées. Autant dire qu'il vaut mieux oublier essayer de modifier les couleurs de la barre de titre de ton usf.
Cependant tout n'est pas perdu, tu peux encore modifier la couleur du texte de cette barre de titre avec le code suivant que tu colles dans un userform, c'est déjà mieux que rien :

Code:
'Ti
Const COLOR_CAPTIONTEXT = 9
Private Declare Function SetSysColors Lib 'user32' (ByVal nChanges As Long, lpSysColor As Long, lpColorValues As Long) As Long
Private Declare Function GetSysColor Lib 'user32' (ByVal nIndex As Long) As Long

Dim Old&

Private Sub UserForm_Activate()
  Old = GetSysColor(COLOR_CAPTIONTEXT)
  SetSysColors 1, COLOR_CAPTIONTEXT, vbGreen
End Sub

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
  SetSysColors 1, COLOR_CAPTIONTEXT, Old
End Sub

Message édité par: Ti_, à: 31/03/2006 13:19
 
Je te remercie TI pour tes conseils et tes remarques, je viens d'essayer le code que tu m'a fourni. Cela fonctionne super.

Merci encore pour le temps que rtu a passé sur mon problème.

Cordialement

Zeltron
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour