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++Builder Discussion :

Problème avec un PopupMenu [FAQ]


Sujet :

C++Builder

  1. #1
    Membre confirmé
    Homme Profil pro
    Consultant MOA
    Inscrit en
    Juillet 2004
    Messages
    289
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant MOA
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2004
    Messages : 289
    Points : 635
    Points
    635
    Par défaut Problème avec un PopupMenu
    Salut à tous,

    J'ai un problème avec un PopupMenu, parce que quand j'essaye de le faire s'ouvrir avec un clic gauche, il veut pas et reste sur un clic droit
    Y'a-t-il un paramètre à changer autre part que dans ses propriétés ?

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 374
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 374
    Points : 1 759
    Points
    1 759
    Par défaut
    Salut !

    PopupMenu1->AutoPopup = false;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
          TShiftState Shift, int X, int Y)
    {
    PopupMenu1->Popup(Left + X, Top + Y);
    }
    A plus !

  3. #3
    Membre chevronné
    Avatar de Gilles Louïse
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    421
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2002
    Messages : 421
    Points : 1 911
    Points
    1 911
    Par défaut
    Par défaut, le Popup s'active sur clic droit, c'est écrit dans la doc. Pour l'avoir sur clic gauche, on programme l'événement OnMouseDown de l'objet cliqué. Si c'est un Popup menu qui s'affiche par exemple sur simple clic de la forme principale, on écrira ceci sur l'événement OnMouseDown.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
          TShiftState Shift, int X, int Y)
    {
    PopupMenu1->Popup(Left+X,Top+Y);
    }
    Cet événement nous donne X,Y ce qui nous permet d'afficher le PopupMenu à l'endroit du curseur (car le OnClick ne donne pas X,Y). Comme cet événement s'exécute sur clic gauche, le PopupMenu s'affichera sur clic gauche mais ce comportement n'est pas standard.

    À bientôt
    Gilles

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

Discussions similaires

  1. Problème avec PopupMenu
    Par philippef dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 29/08/2006, 19h20
  2. Probléme avec affiche d'un PopUpMenu
    Par Lucas42 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 21/06/2006, 17h32
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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