VB.NET: Le ContextMenuStrip ne s'affiche pas en mode normal.
Résolu
Anonyme209
Messages postés
761
Statut
Membre
-
Anonyme209 Messages postés 761 Statut Membre -
Anonyme209 Messages postés 761 Statut Membre -
Bonjour,
voilà mon problème:
J'ai un NotifiyIcon, un ContextMenuStrip.
NotifyIcon.ContextMenuStrip = mon ContextMenuStrip (appelé ContextMenuStrip1)
En mode débogage (avec Microsoft Visual Basic), tout marche parfaitement.
Cependant, lorsque j'ouvre mon appli en mode normal (en double cliquant directement sur l'exécutable), rien ne se passe lorsqu'on clique droit sur le NotifyIcon. J'ai l'impression qu'il ne se rend même pas compte que j'appuie sur le NotifyIcon, car, avec le code ci-dessous, même le MsgBox n'est pas affiché:
Merci de votre aide
voilà mon problème:
J'ai un NotifiyIcon, un ContextMenuStrip.
NotifyIcon.ContextMenuStrip = mon ContextMenuStrip (appelé ContextMenuStrip1)
En mode débogage (avec Microsoft Visual Basic), tout marche parfaitement.
Cependant, lorsque j'ouvre mon appli en mode normal (en double cliquant directement sur l'exécutable), rien ne se passe lorsqu'on clique droit sur le NotifyIcon. J'ai l'impression qu'il ne se rend même pas compte que j'appuie sur le NotifyIcon, car, avec le code ci-dessous, même le MsgBox n'est pas affiché:
Private Sub NotifyIcon1_Click(sender As System.Object, e As System.EventArgs) Handles NotifyIcon1.Click
MsgBox("test")
ContextMenuStrip1.Show(Cursor.Position)
End Sub
Merci de votre aide
7 réponses
-
-
Bonjour,
Cela faisait un moment , je fréquente rarement ce forum, plutôt le vb-vba
Donc tout d'abord aller dans la propriété de NotifyIcon:
ContextMenuStrip et mettre ContextMenuStrip1
Ensuite voici un exemple de code:
Public Class Form1 Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load NotifyIcon1.BalloonTipText = "Clic droit pour acceder au menu" End Sub Private Sub ToolStripMenuItem1_Click(sender As System.Object, e As System.EventArgs) Handles ToolStripMenuItem1.Click MsgBox("hello") End Sub Private Sub NotifyIcon1_MouseClick(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles NotifyIcon1.MouseClick If e.Button = Windows.Forms.MouseButtons.Left Then Me.NotifyIcon1.ShowBalloonTip(5000) End Sub End Class
Voilà c'est tout, il fallait juste faire la liaison avec les 2 contrôles
-
Aucun changement, le contextmenustrip est parfaitement affiché en mode débogage de visual studio, mais pas lorsqu'on ouvre l'application directement avec l'exécutable.
Merci de votre aide -
Voici un exemple:
http://cjoint.com/data3/3JxocQ2L7UR.htm
Pour les questions en VB.NET tu trouveras plus facilement de l'aide ici:
https://codes-sources.commentcamarche.net/forum/c-net-113
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Non c'est pour l'avenir si tu as des questions à poser, il y aura plus d'interlocuteur.
Le programme marche- t-il chez toi?
-
Oui, le programme envoyé marche parfaitement, le contextmenustrip est affiché.
Le problème n'arrive que avec une seule application, les autres marchent correctement. -
Problème apparemment résolu.
J'ai supprimé le NotifyIcon et le ContextMenuStrip, et j'en ai remis un de chaque, j'ai remis NotyfyIcon.ContextMenuStrip = ContextMenuStrip1, et le contextmenustrip s'affiche correctement tout le temps.