Select Case pour menu strip [Résolu]

podolis 73 Messages postés mardi 18 mars 2008Date d'inscription 19 décembre 2010 Dernière intervention - 16 avril 2008 à 12:01 - Dernière réponse : podolis 73 Messages postés mardi 18 mars 2008Date d'inscription 19 décembre 2010 Dernière intervention
- 16 avril 2008 à 15:03
j'aimerais savoir comment utiliser la fonciton select case avec un MenuStrip

Private Sub MenuStrip1_ItemClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolStripItemClickedEventArgs) Handles MenuStrip1.ItemClicked
        Select Case MenuStrip1
            Case ISSToolStripMenuItem.Selected
                PictureBox1.Image = Global.WindowsApplication1.My.Resources.DefCamECafe
        End Select
    End Sub

voila se que j'ai essayé de faire mais sa marche pas
Merci de m'indiquer si j'oubli quelque chose
Médéric
Ergonome Logiel
(VB.NET-Débutant)
Afficher la suite 

9 réponses

Répondre au sujet
jrivet 7401 Messages postés mercredi 23 avril 2003Date d'inscription 6 avril 2012 Dernière intervention - 16 avril 2008 à 12:07
+3
Utile
Salut,
Que souhaites tu faire exactement?

Pourquoi souhaites tu utliser Select Case?

@+: Ju£i?n
Pensez: Réponse acceptée
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de jrivet
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 16 avril 2008 à 12:22
+3
Utile
regarde le contenu de e
pour pouvoir identifier l'element cliqué
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Renfield
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 16 avril 2008 à 13:23
+3
Utile
le texte affiché lors du survol de l'élement par le curseur de la souris
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Renfield
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 16 avril 2008 à 13:44
+3
Utile
Le menuStrip ne s'occupe que des elements de premier niveau.... pour les sous-niveaux, joues avec le gestionnaire d'evenement de chaque element enfant
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Renfield
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 16 avril 2008 à 14:46
+3
Utile
tu peux abonner tous tes elements au même evenement Click

Private Sub ItemClicked(ByVal sender As Object, ByVal e As System.EventArgs)
Me.Text = CType(sender, ToolStripItem).Text
End Sub

le tout étant juste de pouvoir parcourir dynamiquement la liste des menu et sous-menus.
je t'ai codé ca... ca fonctionne.

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
For Each oItem As ToolStripMenuItem In MenuStrip1.Items
AddHandlerToMenuItems(oItem.DropDownItems)
Next
End Sub

Private Sub AddHandlerToMenuItems(ByRef voItems As ToolStripItemCollection)
For Each oItem As ToolStripItem In voItems
If TypeOf oItem Is ToolStripMenuItem Then
AddHandler oItem.Click, AddressOf ItemClicked
AddHandlerToMenuItems(CType(oItem, ToolStripMenuItem).DropDownItems)
End If
Next oItem
End Sub
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Renfield
podolis 73 Messages postés mardi 18 mars 2008Date d'inscription 19 décembre 2010 Dernière intervention - 16 avril 2008 à 13:13
0
Utile
je voudrais changer l'image dans une picture box et je préfère utiliser select case car sa me demande moins de manipulation
(j'ai environ 40 items dans mon menu)
J'ai du mal a comprendre l'architecture du menu strip
Quand je lui demande de m'afficher Text de l'item selectionner dans un label, il m'affiche uniquement ceux de menu, j'arrive pas a obtenir le text des sous menus
Private Sub MenuStrip1_ItemClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolStripItemClickedEventArgs) Handles MenuStrip1.ItemClicked
                Label1.Text = e.ClickedItem.Text
                Label2.Text = e.ClickedItem.ToolTipText
    End Sub
Label1.Text = e.ClickedItem.Text
j'ai essayé avec tooltiptext mais il affiche rien donc je sais pas a quoi renvoi ToolTipText
Médéric
Ergonome Logiel
(VB.NET-Débutant)
Commenter la réponse de podolis
podolis 73 Messages postés mardi 18 mars 2008Date d'inscription 19 décembre 2010 Dernière intervention - 16 avril 2008 à 13:30
0
Utile
OK je comprend a quoi sert tooltiptext maintenant
Mon problème s'est que je sais tjs pas comment renvoyé de text de mes sous menus

Médéric
Ergonome Logiel
(VB.NET-Débutant)
Commenter la réponse de podolis
podolis 73 Messages postés mardi 18 mars 2008Date d'inscription 19 décembre 2010 Dernière intervention - 16 avril 2008 à 14:26
0
Utile
SI je comprend bien il vas faloir que me tape mais 40 menu comme si dessous
Private Sub BATIMENTSCIENCEAToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BATIMENTSCIENCEAToolStripMenuItem.Click
    'Ouvrir une image
End Sub
Private Sub NIVEAU2ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NIVEAU2ToolStripMenuItem.Click
    'Ouvrir une image
End Sub
Private Sub NIVEAU1ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NIVEAU1ToolStripMenuItem.Click
    'Ouvrir une image
End Sub
Sinon, serait il possible de renvoyer les sous menu d'un élément du menu principale (je m'explique)
Par exemple j'ai un menu avec : Plan de masse
                                          ensuite : BATIMENT A
                                                       BATIMENT B
                                                       BATIMENT C (en sous menu de plan de masse)
Et avec une fonction de ce genre ? --->
 Private Sub PlandemasseToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PlandemasseToolStripMenuItem.Click
        Select Case "je c pas ce qu'il faut mettre"
            Case BATIMENTAToolStripMenuItem.Selected
                PictureBox1.Image = Global.WindowsApplication1.My.Resources.Resources.DefCamECafe
            Case BATIMENTBToolStripMenuItem.Selected
                PictureBox1.Image = Global.WindowsApplication1.My.Resources.Resources.DefCamEIss
        End Select
    End Sub
Merci pour votre aide et particulièrement a Renfield

Médéric
Ergonome Logiel
(VB.NET-Débutant)
Commenter la réponse de podolis
podolis 73 Messages postés mardi 18 mars 2008Date d'inscription 19 décembre 2010 Dernière intervention - 16 avril 2008 à 15:03
0
Utile
Merci sa marche nikel
Un truc de plus d'appris peut être qu'un jour je programmerai de mes propre ailes

Médéric
Ergonome Logiel
(VB.NET-Débutant)
Commenter la réponse de podolis

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.