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

MFC Discussion :

Problème menu popup


Sujet :

MFC

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2005
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 35
    Points : 20
    Points
    20
    Par défaut Problème menu popup
    Bonjour,

    Je développe actuellement une application MFC de type boîte de dialogue. J'aimerais y inclure un menu contextuel appelé à partir du bouton droit de la souris. J'aimerais ne pas avoir à passer par l'éditeur de ressource (c'est pratique, mais ça devient chiant quand on a des modifs à faire).

    Mon problème est le suivant : le menu s'affiche, mais quand je clique sur l'un des éléments, mon appli se ferme.

    Voilà le 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
     
    void COpenglMfcDlg::OnRButtonDown(UINT nFlags, CPoint point)
    {
    	int i;
    	ClientToScreen(&point);
    	CMenu menu;
    	menu.CreatePopupMenu();
    	menu.AppendMenu(MF_STRING, 1, "Premiere option");
    	menu.AppendMenu(MF_SEPARATOR);
    	menu.AppendMenu(MF_STRING, 2, "Deuxieme option");
    	int Result=menu.TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON, point.x, point.y, this);
    	//Agir en fonction du résultat retourné
    	switch (Result)
    	{
    		case 1 :
    			AfxMessageBox("menu 1",MB_OK);
    			break;
    		case 2 :
    			AfxMessageBox("menu 2",MB_OK);
    			break;
    		default :
    			AfxMessageBox("menu annulé",MB_OK);
    			break;
    	}
    	menu.DestroyMenu();
     
    	CDialog::OnRButtonDown(nFlags, point);
    }
    Je me suis inspiré du bout de programme de la FAQ.

    Voilà, j'espère que quelqu'un m'aidera à y voir clair. Merci.

  2. #2
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    salut, ca ne devrait pas poser de problèmes

    tu as essayé de voir où ca plantait en debug ?

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2005
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 35
    Points : 20
    Points
    20
    Par défaut
    Oui, ça sort de l'appli quand j'affecte la valeur à Result. Bizarre ...

  4. #4
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    je ne vois pas pourquoi ...

    menu a un handle qui a l'air correct ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 48
    Points : 40
    Points
    40
    Par défaut
    Salut à vous !

    Je suis désolé de m'incruster dans ton topic ptitJP, mais j'ai exactement le même problème que toi...

    Je crée un menu contextuel en utilisant le clic droit de la souris, et mon application (qui est tout comme ptitJP une boite de dialogue) se ferme, mais seulement lorsque je clique sur les deux 1ers Items... Je trouve ça assez bizare.

    Aussi, le trackPopupMenu me renvoie toujours 1 quelque soit l'item cliqué...

    Si quelqu'un connait la réponse à ces problèmes !

    En vous remerciant d'avance.

  6. #6
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    c'est normal que cela renvoi toujours 1. C'est pour dire que le menu a été bien affiché.

    Le traitement du click sur un item doit se faire à l'interception de WM_COMMAND

    D'ailleurs, avez vous pris garde à etre bien sur que les identifiants ne sont pas déjà utilisés ?

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 48
    Points : 40
    Points
    40
    Par défaut
    Oui, voilà, c'est ça.
    En fait, le "1" était déjà assigné autre part...
    Donc en modifiant les chiffres par d'autres valeurs non utilisées, cela fonctionne.
    Merci de ton aide!

  8. #8
    Membre à l'essai
    Inscrit en
    Février 2005
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 35
    Points : 20
    Points
    20
    Par défaut
    Effectivement, ça va beaucoup mieux comme ça. Merci beaucoup.

  9. #9
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    si c'est résolu, pense au bouton en bas à gauche

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

Discussions similaires

  1. [Débutant] Problème données popup menu
    Par Yul56 dans le forum Interfaces Graphiques
    Réponses: 33
    Dernier message: 30/06/2015, 13h49
  2. Problème menu popup dans un tablelist
    Par Le Bertch dans le forum Tcl/Tk
    Réponses: 1
    Dernier message: 25/10/2013, 14h28
  3. Problème Menu CSS
    Par Kerod dans le forum Mise en page CSS
    Réponses: 7
    Dernier message: 28/04/2005, 20h32
  4. Problème Formulaire + popup + page PHP
    Par nesbla dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 25/02/2005, 00h10
  5. Comment créer un menu popup style XP ?
    Par chaours dans le forum Composants VCL
    Réponses: 4
    Dernier message: 29/09/2003, 09h38

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