Щелкните правой кнопкой мыши на кнопке

Я вижу сообщения BN_CLICKED и BN_DBLCLK для кнопки. но как мне поймать сообщение правой кнопкой мыши для любого элемента управления кнопки?

4 голоса | спросил cpx 27 +03002009-10-27T18:28:57+03:00312009bEurope/MoscowTue, 27 Oct 2009 18:28:57 +0300 2009, 18:28:57

5 ответов


0

Вы можете использовать WM_RBUTTONDOWN , WM_RBUTTONUP и WM_RBUTTONDBLCLK .

ответил Brian R. Bondy 27 +03002009-10-27T18:32:23+03:00312009bEurope/MoscowTue, 27 Oct 2009 18:32:23 +0300 2009, 18:32:23
0

BN_CLICKED - это уведомление, отправленное в родительское окно кнопки самой кнопкой. Чтобы перехватить сообщения WM_RBUTTONDOWN и т. Д., Вам нужно разделить кнопку на подклассы, поскольку это сообщения, отправленные из самой Windows в окно кнопки. См. Раздел «Создание подклассов экземпляров» в Безопасном создании подклассов в Win32

ответил Murray 30 +03002009-10-30T03:57:13+03:00312009bEurope/MoscowFri, 30 Oct 2009 03:57:13 +0300 2009, 03:57:13
0

Дескриптор WM_CONTEXTMENU. Преимущество этого перед обработкой сообщений правой кнопки мыши состоит в том, что ваши пользователи смогут использовать эквиваленты клавиатуры для щелчка правой кнопкой мыши.

ответил Michael Dunn 7 62009vEurope/Moscow11bEurope/MoscowSat, 07 Nov 2009 22:41:11 +0300 2009, 22:41:11
0

NM_RCLICK отправлено, поэтому внимательно посмотрите на сообщения Windows.

вы можете проверить получение BN_CLICKED, чтобы узнать, является ли NM_RCLICK или даже WM_RBUTTONDOWN

ответил Reallyethical 27 +03002009-10-27T18:33:27+03:00312009bEurope/MoscowTue, 27 Oct 2009 18:33:27 +0300 2009, 18:33:27
0

Не совсем ответ, но я думаю, что вы могли бы поймать контекстное меню на кнопке. (не знаю, событие с моей головы). Если вы можете поймать контекстное меню нажмите на кнопку, то это так же, как правой кнопкой мыши.

КНОПКА вниз - не очень хороший путь. Клик ловится только тогда, когда пользователь нажимает кнопку вверх. Попробуйте нажать кнопку, и перед тем, как убрать палец с кнопки, уберите с нее мышь ... удар по этой кнопке не записывается, как и щелчок.

Опять же, я знаю, что это не ответ, но это может быть подсказка. Я ручной парень, поэтому чаще всего у меня нет «правой кнопки мыши».

ответил baash05 6 52009vEurope/Moscow11bEurope/MoscowFri, 06 Nov 2009 08:41:05 +0300 2009, 08:41:05

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132