как получить текст пункта меню, используя vc ++? - PullRequest
0 голосов
/ 07 октября 2009

Моя проблема в том, "как узнать, какой пункт меню нажал в Visual Studio 2005 ". Я написал код, используя хук для мониторинга WM_MENUSELECT..это нормально работает для блокнота, приложений Visual C ++ 6.0, но когда я использую этот код для VS-2005, он не просыпается (этот тип сообщений не генерация, когда я нажимаю пункт меню в VS2005) ..

есть ли другой способ добиться этого ...

, пожалуйста, помогите мне в этом ... я действительно раздражаюсь, потому что я борюсь за последний месяц ...

любая помощь очень ценится ...

Ответы [ 2 ]

1 голос
/ 23 марта 2010

Каждый раз, когда вы предполагаете что-либо о том, как внедряется программное обеспечение других людей, вы рискуете сделать что-то необычное или иное, противоречащее вашим ожиданиям. Здесь нет идеального решения.

Сказав это, вы можете попробовать перехватить сообщения WM_COMMAND вместо WM_MENUSELECT. Это более вероятно, будет использоваться альтернативными реализациями панели инструментов / меню.

0 голосов
/ 07 октября 2009

WM_MENUSELECT - это сообщение от компонента Windows. Используется одно и то же сообщение, используете ли вы C, C ++, Delphi или любой другой язык. Тривиальные различия, такие как VC ++ 6 и VC ++ 8, не будут иметь значения. XP или Vista могут иметь значение, но я сомневаюсь в этом.

Теперь, возможно, фактическая причина вашей разницы - другая версия MFC или что-то в этом роде, но без кода, который мог бы спекулировать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...