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 ?
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 ?
Salut !
PopupMenu1->AutoPopup = false;
A plus !
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); }
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.
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.
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); }
À bientôt
Gilles
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager