[VB2003] Comment changer la couleur du Mainmenu

Résolu
fdalban Messages postés 7 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 3 février 2011 - 11 sept. 2007 à 02:19
fdalban Messages postés 7 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 3 février 2011 - 12 sept. 2007 à 22:11
Bonjour,

Je cherche a changer la couleur de fond du Mainmenu.
Je n'ai rien trouver a part changer celle des MenuItems, chose qui ne m'interesse pas dans mon projet.

Quelqu'un sais faire ou a des idees ? Je ne maitrise pas du tout la modification/creation de controls, c'est la premiere fois que j'en ai besoin !

Merci d'avance.

5 réponses

Utilisateur anonyme
12 sept. 2007 à 00:46
Alors il faut manier quelques apis :



Private Const MIM_BACKGROUND As Integer = &H2

Private Structure MENUINFO
  Public cbSize As Integer
  Public fMask As Integer
  Public dwStyle As Integer
  Public cyMax As Integer
  Public hbrBack As System.IntPtr
  Public dwContextHelpID As Integer
  Public dwMenuData As Integer
  Public Sub New(ByVal owner As System.Windows.Forms.Control)
    cbSize = System.Runtime.InteropServices.Marshal.SizeOf(GetType(MENUINFO))
    fMask = 0
    dwStyle = 0
    cyMax = 0
    hbrBack = System.IntPtr.Zero
    dwContextHelpID = 0
    dwMenuData = 0
  End Sub
End Structure

<System.Runtime.InteropServices.DllImport("user32.dll")> _
Private Shared Function SetMenuInfo(ByVal hmenu As System.IntPtr, ByRef mi As MENUINFO) As Integer
End Function
<System.Runtime.InteropServices.DllImport("user32.dll")> _
Private Shared Function DrawMenuBar(ByVal hwnd As System.IntPtr) As System.IntPtr
End Function
<System.Runtime.InteropServices.DllImport("gdi32")> _
Private Shared Function CreateSolidBrush(ByVal crColor As Integer) As System.IntPtr
End Function

' Pour appliquer la couleur
Dim mi As New MENUINFO(Me)
mi.fMask = MIM_BACKGROUND
mi.hbrBack = CreateSolidBrush(&HFF) ' Ici du rouge
SetMenuInfo(MyBase.Menu.Handle, mi)
DrawMenuBar(MyBase.Handle),

----

(Nouveau forum VBA/Office
3
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
11 sept. 2007 à 09:23
Salut,
Si tu parle du MenuStrip, c'est avec la property BackColor, comme pour les autres Controls...

<hr />
-Blog-
0
Utilisateur anonyme
11 sept. 2007 à 10:56
Salut,

Tu veux dire toute la bande de menu ou juste les menus ?
Si c'est les menus, regarde un peu ici :
http://www.vbfrance.com/codes/MENUS-DESIGNER-TOUT-SIMPLEMENT_33601.aspx







__________
Kenji

(


Nouveau forum VBA/Office
0
fdalban Messages postés 7 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 3 février 2011
11 sept. 2007 à 20:57
Tout d'abort, merci pour les reponses.
Charles, il s'agit bien de la couleur de la barre du menu, pas des menus. Donc je cherche toujours .... !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fdalban Messages postés 7 Date d'inscription samedi 19 février 2005 Statut Membre Dernière intervention 3 février 2011
12 sept. 2007 à 22:11
EXCELLENT !!!
Merci beaucoup.
0
Rejoignez-nous