Public Class Form1 Dim monmenu As New MenuStrip Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load 'ajout d'un élément Dim menuitem As New ToolStripMenuItem menuitem.Text = "Fichier" 'ajout d'un sous-élément Dim itemOuvrir As New ToolStripMenuItem itemOuvrir.Text = "Ouvrir" itemOuvrir.Tag = "0" 'abonnement à l'événement click AddHandler itemOuvrir.Click, AddressOf item_Click menuitem.DropDownItems.Add(itemOuvrir) 'ajout d'un sous-élément Dim itemEnregistrer As New ToolStripMenuItem itemEnregistrer.Text = "Enregistrer" itemEnregistrer.Tag = "1" 'abonnement à l'événement click AddHandler itemEnregistrer.Click, AddressOf item_Click menuitem.DropDownItems.Add(itemEnregistrer) 'ajout d'un autre sous-élément Dim itemQuitter As New ToolStripMenuItem itemQuitter.Text = "Quitter" itemQuitter.Tag = "2" 'abonnement à l'événement click AddHandler itemQuitter.Click, AddressOf item_Click menuitem.DropDownItems.Add(itemQuitter) 'ajout de l'élément au menustrip monmenu.Items.Add(menuitem) 'ajout du menustrip au formulaire Me.Controls.Add(monmenu) End Sub Private Sub item_Click(ByVal sender As Object, ByVal e As EventArgs) Dim monitem As ToolStripItem = DirectCast(sender, ToolStripItem) MessageBox.Show(monitem.Text) CType(monmenu.Items(0), ToolStripMenuItem).DropDownItems(1).AllowDrop = True End Sub Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click Dim c As ToolStripMenuItem c = CType(CType(monmenu.Items(0), ToolStripMenuItem).DropDownItems.Add("Nouveau menu"), ToolStripMenuItem) c.Name = "Nouveau menu" For lcoount As Integer = 1 To 2 Dim innerItem As New ToolStripMenuItem() innerItem.Text = "Monmenu" & lcoount innerItem.Name = lcoount.ToString 'abonnement à l'événement click AddHandler innerItem.Click, AddressOf item_Click c.DropDownItems.Add(innerItem) Next ' CType(monmenu.Items(0), ToolStripMenuItem).DropDownItems(1).Visible = False End Sub End Class
Dim menustripmain As New MenuStrip Dim menustripmain_itemmenu As New ToolStripMenuItem Dim menustripmain_itemviewappweb As ToolStripMenuItem ' Création dynamique du menu et de son arborescence menustripmain_itemmenu.Text = "Menu" menustripmain_itemmenu.Font = New System.Drawing.Font("Segoe UI", 10.0!) ' Création du menu "Consultation Web Consignes" menustripmain_itemviewappweb = CType(CType(menustripmain_itemmenu, ToolStripMenuItem).DropDownItems.Add("Consultation Web Consignes"), ToolStripMenuItem) menustripmain_itemviewappweb.Name = "ViewWEB" menustripmain_itemviewappweb.Text = "Consultation Web Consignes" AddHandler menustripmain_itemviewappweb.Click, AddressOf ToolStripSplitButtonOpenLinkWeb_ButtonClick ' Ajout des éléments au menustrip Menu menustripmain.Items.Add(menustripmain_itemmenu) ' Ajout du menustripmain au formulaire Me.Controls.Add(menustripmain) '##################################################################################### '# ToolStripSplitButtonOpenLinkWeb pour ouvrir le lien Web des Consignes '##################################################################################### Private Sub ToolStripSplitButtonOpenLinkWeb_ButtonClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles toolStripSplitButtonOpenLinkWeb.ButtonClick Process.Start("http://......") End Sub
' Ajout d'un élément au menustrip
menustripmain_itemreload.Name = "Reload"
menustripmain_itemreload.Text = "Relancer"
menustripmain_itemreload.Font = New System.Drawing.Font("Segoe UI", 10.0!)
menustripmain.Items.Add(menustripmain_itemreload)
' Abonnement à l'événement click
AddHandler menustripmain_itemreload.Click, AddressOf MenuMain_Item_Click
' Ajout d'un élément au menustrip
menustripmain_itemexit.Name = "Quitter"
menustripmain_itemexit.Text = "Quitter"
menustripmain_itemexit.Font = New System.Drawing.Font("Segoe UI", 10.0!)
menustripmain.Items.Add(menustripmain_itemexit)
' Abonnement à l'événement click
AddHandler menustripmain_itemexit.Click, AddressOf MenuMain_Item_Click
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim TypesToolStripMenuItem As New ToolStripMenuItem() ' point 1
TypesToolStripMenuItem.Name = "Type1"
TypesToolStripMenuItem.Text = "Type 1"
TypesToolStripMenuItem.Font = New Font("Georgia", 12)
MenuStrip1.Items.Add(TypesToolStripMenuItem)
AddHandler TypesToolStripMenuItem.Click, AddressOf TypesToolStripMenuItem_Click ' point 2
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim ElementMenu As New ToolStripMenuItem() ' nouveau élément menu
ElementMenu.Name = "Enregistrer"
ElementMenu.Text = "Enregistrer"
ElementMenu.Font = New Font("Georgia", 12)
MenuStrip1.Items.Add(ElementMenu)
AddHandler Enregistrer.Click, AddressOf Enregistrement ' adresse Sub à lier à cet évènement
Dim ElementMenu As New ToolStripMenuItem() ' nouveau élément menu
ElementMenu.Name = "Fermer"
ElementMenu.Text = "Fermer"
ElementMenu.Font = New Font("Georgia", 12)
MenuStrip1.Items.Add(ElementMenu)
AddHandler Fermer.Click, AddressOf Fermeture ' adresse Sub à lier à cet évènement
End Sub
Private Sub Enregistrement()
' le code d'enregistrement
End Sub
Private Sub Fermeture()
' le code pour fermer
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionPublic Class Form1
Dim monmenu As New MenuStrip
Dim i As Integer = 0
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'ajout d'un élément
Dim menuitem As New ToolStripMenuItem
menuitem.Text = "Fichier"
'ajout d'un sous-élément
Dim itemOuvrir As New ToolStripMenuItem
itemOuvrir.Text = "Ouvrir"
itemOuvrir.Tag = "0"
'abonnement à l'événement click
AddHandler itemOuvrir.Click, AddressOf item_Click
menuitem.DropDownItems.Add(itemOuvrir)
'ajout d'un sous-élément
Dim itemEnregistrer As New ToolStripMenuItem
itemEnregistrer.Text = "Enregistrer"
itemEnregistrer.Tag = "1"
'abonnement à l'événement click
AddHandler itemEnregistrer.Click, AddressOf item_Click
menuitem.DropDownItems.Add(itemEnregistrer)
'ajout d'un autre sous-élément
Dim itemQuitter As New ToolStripMenuItem
itemQuitter.Text = "Quitter"
itemQuitter.Tag = "2"
'abonnement à l'événement click
AddHandler itemQuitter.Click, AddressOf item_Click
menuitem.DropDownItems.Add(itemQuitter)
'ajout de l'élément au menustrip
monmenu.Items.Add(menuitem)
'ajout du menustrip au formulaire
Me.Controls.Add(monmenu)
End Sub
Private Sub item_Click(ByVal sender As Object, ByVal e As EventArgs)
ListBox1.SelectedIndex = MenuStrip1.Items.IndexOf(DirectCast(sender, ToolStripItem))
MessageBox.Show(ListBox1.SelectedItem)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim element As New ToolStripMenuItem()
element.Name = "element" & i
element.Text = "element " & i
AddHandler element.Click, AddressOf item_Click
monmenu.Items.Add(element)
i = i + 1
End Sub
End Class
Public Class Form1
Dim monmenu As New MenuStrip
Dim i As Integer = 0
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'ajout d'un élément
Dim menuitem As New ToolStripMenuItem
menuitem.Text = "Fichier"
'ajout d'un sous-élément
Dim itemOuvrir As New ToolStripMenuItem
itemOuvrir.Text = "Ouvrir"
itemOuvrir.Tag = "0"
'abonnement à l'événement click
AddHandler itemOuvrir.Click, AddressOf item_Click
menuitem.DropDownItems.Add(itemOuvrir)
'ajout d'un sous-élément
Dim itemEnregistrer As New ToolStripMenuItem
itemEnregistrer.Text = "Enregistrer"
itemEnregistrer.Tag = "1"
'abonnement à l'événement click
AddHandler itemEnregistrer.Click, AddressOf item_Click
menuitem.DropDownItems.Add(itemEnregistrer)
'ajout d'un autre sous-élément
Dim itemQuitter As New ToolStripMenuItem
itemQuitter.Text = "Quitter"
itemQuitter.Tag = "2"
'abonnement à l'événement click
AddHandler itemQuitter.Click, AddressOf item_Click
menuitem.DropDownItems.Add(itemQuitter)
'ajout de l'élément au menustrip
monmenu.Items.Add(menuitem)
Me.Controls.Add(monmenu)
End Sub
Private Sub item_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim item As ToolStripItem = sender
ListBox1.SelectedIndex = item.Owner.Items.IndexOf(item)
MessageBox.Show(ListBox1.SelectedItem)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim element As New ToolStripMenuItem()
element.Name = "element" & i
element.Text = "element " & i
AddHandler element.Click, AddressOf item_Click
monmenu.Items.Add(element)
i = i + 1
End Sub
End Class
Private Sub item_Click(ByVal sender As Object, ByVal e As EventArgs) Dim index As Integer index = monmenu.Items.IndexOf(DirectCast(sender, ToolStripItem)) ListBox1.SelectedIndex = index - 1 MessageBox.Show(CStr(ListBox1.SelectedItem)) 'nom MessageBox.Show(CStr(ListBox1.SelectedIndex)) 'index End Sub Private Sub Button1_Click_1(sender As System.Object, e As System.EventArgs) Handles Button1.Click Dim element As New ToolStripMenuItem() element.Name = "element" & i element.Text = "element " & i AddHandler element.Click, AddressOf item_Click monmenu.Items.Add(element) ListBox1.Items.Add(element.Text) i = i + 1 End Sub
Option Strict Onet
Option Explicit Onpour corriger les erreurs
Pour ce qui est de ta réponse j'ai écrit dans la fenêtre immédiate
?monmenu.Items(0). et l'intellisence ne propose pas DropDownItems apres le point.
4 déc. 2016 à 22:55
Merci c'est ce que je voulais et en plus c'est très bien expliqué, sérieux tu m'enlève une épine du pied.
si je veux qu'il affiche le contenue d'une ListBox par exemple (je précise que le nombre des items de la ListBox est le même que celui du Menustrip
et aussi je veux par exemple si je supprimer un item de la ListBox le ToolStripMenuItem lié a ce item (item de la ListBox ) sera aussi supprimer
5 déc. 2016 à 08:48
http://codes-sources.commentcamarche.net/forum/affich-10056632-groupes-de-controles-indexes-sous-vb-net?page=2#28
5 déc. 2016 à 10:01
Merci
je vais jeter un œil au lien que tu m'a donné merci