Событие правого клика элемента управления DropDownList

У меня есть элемент управления выпадающего списка в моем диалоге MFC.

введите описание изображения здесь

В этом списке будет почти все сообщения Windows. Будучи так много, пользователь найдет их сложнее. Поэтому я хочу, чтобы, когда пользователь щелкнул правой кнопкой мыши на раскрывающемся списке, открылось окно с некоторыми элементами поиска.

Я не знаю точно, как сделать событие правой кнопкой мыши.

Это мой код файла .rc:

    COMBOBOX        IDC_WM,98,7,152,30,CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | CBS_SORT | WS_VSCROLL | WS_TABSTOP

Я пробовал использовать пункт «Создать обработчик событий» в Visual Studio, но не нашел событие, вызываемое правой кнопкой мыши.

Кто-нибудь может мне помочь?

0

Решение

В вашем диалоге, который является родительским для переопределения комбинированного списка PreTranslateMessage.

Добавьте следующий код:

BOOL CMyDlg::PreTranslateMessage(MSG* pMsg)
{
if(pMsg->message == WM_RBUTTONUP)
{
if(pMsg->hwnd == m_myCombobox.GetSafeHwnd())
{
// do advanced search here

return TRUE;
}
}
return CDialog::PreTranslateMessage(pMsg);
}
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]