как узнать, развёрнуто ли в данный момент меню или нет ?

Тема в разделе "WASM.WIN32", создана пользователем nc, 3 дек 2007.

  1. nc

    nc New Member

    Публикаций:
    0
    Регистрация:
    4 июн 2007
    Сообщения:
    61
    если меню развёрнуто, то оно собой загораживает часть окна - нужно перехватить этот момент.

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

    как перехватить все эти события ?
     
  2. letika

    letika New Member

    Публикаций:
    0
    Регистрация:
    10 апр 2007
    Сообщения:
    28
    Именно меню или любое окно? Первое - WM_INITMENU, второе - GetClipBox, например.
     
  3. nc

    nc New Member

    Публикаций:
    0
    Регистрация:
    4 июн 2007
    Сообщения:
    61
    Именно меню
     
  4. nc

    nc New Member

    Публикаций:
    0
    Регистрация:
    4 июн 2007
    Сообщения:
    61
    WM_INITMENU, WM_INITMENUPOPUP - при открытии, а как закрытие перехватить ?
     
  5. iZzz32

    iZzz32 Sergey Sfeli

    Публикаций:
    0
    Регистрация:
    3 сен 2006
    Сообщения:
    355
    nc, WM_ENTERMENULOOP и WM_EXITMENULOOP? :-/
     
  6. nc

    nc New Member

    Публикаций:
    0
    Регистрация:
    4 июн 2007
    Сообщения:
    61
    Спасибо!

    WM_INITMENU через DefWindowProc то что надо!