Site:  Cours VB.net  
3.11 MainMenu, ContextMenu.

Comment créer un menu principal en haut d'un formulaire ou un ContextMenu?

Avec MainMenu et ContextMenu en VB 2003.

Avec MenuTrip et ContextMenuStrip en VB 2005.

MainMenu en Vb 2003

On peut ajouter un menu dans une fenêtre.

Beaucoup d’applications contiennent un menu.

Exemple de menu :

 

On remarque que le contenu des menus est standardisé afin que l’utilisateur s’y retrouve sans aide (L’utilisateur lit, à mon avis, rarement les aides !!)

Comment créer un menu ?

En allant dans la boite à outils, chercher un main menu et en le déposant sur la fenêtre : il apparaît en dessous de la fenêtre.

Pour dessiner le menu, il suffit de mettre le curseur sur le menu en haut de la fenêtre, ou est écrit ‘Taper ici’ : tapez le texte du menu, ("Fichier" par exemple).

Il apparaît automatiquement un ‘Tapez Ici‘ pour les lignes dessous ou le menu suivant.

Les lignes du menu sont nommées automatiquement MenuItem1, MenuItem2..

Quand le curseur est sur une ligne du menu, la fenêtre de propriété donne les propriétés de la ligne :

La propriété ShortKey permet de créer un raccourci.

La propriété Checked  permet de cochez la ligne

La propriété Visible  permet de faire apparaître ou non une ligne.

Si vous double-cliquez sur la ligne du menu vous voyez apparaître :

Private Sub MenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click

End Sub    

C’est la procédure événement liée à la ligne du menu.

Quand l’utilisateur clique sur une ligne du menu c’est le code contenu dans cette procédure qui est effectué.

 

Menu Contextuel Vb 2003 

C'est un menu qui s'ouvre quand, le curseur de l'utilisateur est sur un objet, et qu'on clique sur le bouton droit de la souris.

En allant dans la boite à outils, chercher un Context menu, on le dépose sur la fenêtre : il apparaît en dessous de la fenêtre.

Si on le sélectionne avec la souris, il apparaît en haut et comme pour le menu principal, on peut ajouter des lignes.

Il faut ensuite affecter ce Context Menu à un contrôle; pour cela donner à la propriété ContextMenu du contrôle le nom du ContextMenu.

TextBox1.ContextMenu= ContextMenu1

Si vous double-cliquez sur une ligne du menu vous voyez apparaître les procédures évènement correspondantes.

 

MenuStrip de Vb 2005:

Remplace le MainMenu en VB 2005.

En allant dans la boite à outils, chercher un MenuStrip et en le déposant sur la fenêtre : il apparaît en dessous de la fenêtre et la barre apparaît en haut du formulaire.

On peur ajouter des menus, combobox et zone texte.

Pour remplir rapidement les menus, c'est comme en vb2003.

On peut mettre des images dans les menus.

Dans les propriétés Items permet d'avoir accès aux menus ou lignes et à toutes les propriétés des éléments (image..).

Chaque élément de la barre a sa procédure évènement: Pour le premier bouton par exemple:

Private Sub MenuStrip1_ItemClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click

End Sub

 

ContextMenuStrip de Vb 2005:

Remplace le ContextMenu de Vb2003