CListBox Right click sélection menu

mortiis Messages postés 120 Date d'inscription mardi 11 février 2003 Statut Membre Dernière intervention 9 mars 2008 - 23 oct. 2003 à 02:21
mortiis Messages postés 120 Date d'inscription mardi 11 février 2003 Statut Membre Dernière intervention 9 mars 2008 - 23 oct. 2003 à 04:53
Bonjour à tous

Je fais un prog ou j'aimerais avoir un listbox qui accepterais le message du clique droit de la souris pour afficher un menu contextuel et j'ai réussi.

Il n'y a qu'un problème, quand j'utilise le clique droit de la souris j'aimerais qu'en plus de faire afficher le menu cela sélectionne l'élément dans la liste comme le fait le bouton gauche de la souris.

Ce que j'ai de fait présentement :

J'ai créer une classe dérivé de la classe CListBox que j'ai nommé CListBoxRMenu.
j'ai intercepté
OnRButtonDown(UINT nFlags, CPoint point)
dans cette classe et à ce moment je fais afficher le menu

Pour ce qui est de faire sélectionné l'élément comme avec le bouton droit, j'ai essayer de renvoyer le message avec les même paramêtres, mais en changant le message pour WM_LBUTTONDOWN, mais cela ne fonctionne pas
j'ai essayé toutes les solutions que j'ai pu imaginé et je n'ai pas trouvé.

j'aprécierais beaucoup vôtre aide.

Merci beaucoup.

1 réponse

mortiis Messages postés 120 Date d'inscription mardi 11 février 2003 Statut Membre Dernière intervention 9 mars 2008
23 oct. 2003 à 04:53
Bonjour à tous

J'ai trouvé la solution

il faut en plus dans le PreTranslateMessage ajouter ce code

BOOL CListBoxRMenu::PreTranslateMessage(MSG* pMsg)
{
if(pMsg->message == WM_RBUTTONDOWN)
SendMessage(WM_LBUTTONDOWN,pMsg->wParam,pMsg->lParam);

return CListBox::PreTranslateMessage(pMsg);
}
0
Rejoignez-nous