IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++/CLI Discussion :

windows form contextmenu


Sujet :

C++/CLI

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2011
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Juin 2011
    Messages : 54
    Points : 19
    Points
    19
    Par défaut windows form contextmenu
    Bonjour à tous,

    Je travail avec visualC++ et les windows form.
    J'ai un problème avec un contextmenu.
    J'ai plusieurs picturebox, certaines ont un evenement "click" qui appèle une méthode, d'autres non. Je voudrais que lorsque je "clic droit" sur une picturebox qui a un evenement, que le menu s'affiche.
    Or ce qui se passe, c'est que le menu s'affiche quelque soit l'endroit ou je "clic droit".

    Voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    //----------------------------------
    //dans le constructeur de ma form
    //----------------------------------
    System::Windows::Forms::ContextMenu^ mnuContextMenu = gcnew System::Windows::Forms::ContextMenu();
    this->ContextMenu = mnuContextMenu;
    MenuItem^ Statistiques = gcnew MenuItem();
    MenuItem^ Telnet = gcnew MenuItem();
    Statistiques->Text = "Statistiques";
    Statistiques->Click += gcnew System::EventHandler(this, &Form1::Click_Stat);
    Telnet->Text = "Telnet";
    Telnet->Click += gcnew System::EventHandler(this, &Form1::Click_Telnet);
    mnuContextMenu->MenuItems->Add(Statistiques);
    mnuContextMenu->MenuItems->Add(Telnet);
     
    //--------------------------------
    //méthode appelé lorsque la souris s'appuie sur une picturebox qui a un
    //evenement "clic"
    //--------------------------------
    private: System::Void Picture_MouseDown(System::Object^  sender, System::Windows::Forms::MouseEventArgs^  e) 
    {	//transforme le pointer sur l'objet, en pointer sur une picturebox
    	PictureBox^ Cible = (PictureBox^)sender;
    	if(e->Button == System::Windows::Forms::MouseButtons::Left)
    	{	...
    	}
    	else if(e->Button == System::Windows::Forms::MouseButtons::Right)
    	{	//affiche contextmenu ici!!!
    	}
    }
    Je ne comprend pas, à aucun moment je lui dis de s'afficher, mais il s'affiche à chaque "clic droit".
    Comment faire?

    Merci d'avance à tous,
    Persnip

  2. #2
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 426
    Points : 827
    Points
    827
    Par défaut
    Salut,
    Citation Envoyé par Persnip77 Voir le message
    Or ce qui se passe, c'est que le menu s'affiche quelque soit l'endroit ou je "clic droit"
    C'est normal! Ton ContextMenu est attaché à ta feuille
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this->ContextMenu = mnuContextMenu;
    au lieu d'être attaché au(x) Control(s) qui doivent l'utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this->monControl1->ContextMenuStrip = this->mnuContextMenu;
    ( Mon EDI VisualStudio utilise ContextMenuStrip plutôt que ContextMenu )

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2011
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : Juin 2011
    Messages : 54
    Points : 19
    Points
    19
    Par défaut
    Super ça marche nikel crome,
    Merci Bertry

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Delphi 2005 /Windows Forms] passage de paramêtre
    Par Frank dans le forum Delphi .NET
    Réponses: 1
    Dernier message: 28/12/2005, 17h22
  2. [VB.NET] Partager un dataset entre 2 windows forms ???
    Par kissskoool dans le forum Windows Forms
    Réponses: 11
    Dernier message: 26/07/2005, 11h34
  3. [debutant VC++ et C++] Windows form et OPENFILENAME
    Par Le Scandinave dans le forum MFC
    Réponses: 5
    Dernier message: 08/03/2005, 15h31
  4. [C#] windows form et ComboBox
    Par telynor dans le forum Windows Forms
    Réponses: 9
    Dernier message: 12/11/2004, 18h17
  5. [VB.NET] windows form traits
    Par DG JohnJohn dans le forum Windows Forms
    Réponses: 3
    Dernier message: 08/06/2004, 15h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo