Синхронное изменение пунктов основого и всплывающего меню

Тема в разделе "MS Visual C++", создана пользователем BFS, 28 окт 2007.

  1. BFS

    BFS Гость

    Значит есть MDI-приложение. В нём приутствует основное меню, и всплывающее меню. Устанавливаю одинаковые идентификаторы для соотвествующих пунктов; кстати, в ответ на это вижла (VS2005) что-то говорит о дубликации (Check Mnemonics - это есть такой во всплывающем меню, при наведении указателя мыши на дублируемый идентификатор), и при добавлении обработчика он автоматом добавляется мне в C*App.cpp, так как там у меня определены обработчики дублирующих идентификаторов (это я так предполагаю). И опять-таки созданным там функциям-обработчикам никогда не передаётся управление.
    Посдскажите, как сделать так, чтобы всё это заработало, и чтобы в сплывающем меню выбранный элемент так же отмечался галоской(ф-ция pCmdUI->SetCheck), чтобы при выборе пункта основного меню, автоматически отмечался соотвествующий пункт всплывающего меню;а то ерунда получается какая-то...
    Заранее благодарен.
     
  2. BFS

    BFS Гость

    Всё сделал вот так, теперь работает!
    Код (Text):
        CMenu oMenu;
    oMenu.LoadMenu(IDR_MENUMAIN);
    CMenu *poSubMenu = oMenu.GetSubMenu(0);
    POINT sPoint;
    GetCursorPos(&sPoint);
    poSubMenu->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, sPoint.x, sPoint.y, AfxGetMainWnd());
    P.S. Спасибки модеру, за то что исправлял за мною "код" <_<
     
Загрузка...

Поделиться этой страницей