Toolbar Winapi

Тема в разделе "Общие вопросы по С и С++", создана пользователем alekssgor, 5 фев 2012.

  1. alekssgor

    alekssgor Well-Known Member

    Регистрация:
    26 май 2008
    Сообщения:
    118
    Симпатии:
    0
    В тооллбаре установлен расширенный стиль TBSTYLE_EX_DRAWDDARROWS для кнопок со стрелкой с появляющимся меню. При нажатии кнопки со стрелкой происходит событие WM_NOTIFY TBN_DROPDOWN. Через это событие передаётся RECT координатов кнопки. Как вывести контекстное меню точно под кнопкой не возле курсора?????? Ведь контекстному окну надо передавать экранные координаты а не владельца?????

    Код (Text):
    SendMessageA(hWndToolbar, TB_SETEXTENDEDSTYLE, (WPARAM)0, (LPARAM)TBSTYLE_EX_DRAWDDARROWS);


    case WM_NOTIFY:
    {
    switch (((LPNMHDR)lParam)->code)
    {
    case TBN_DROPDOWN:
    {
    //MessageBoxA(0,"Нажата кнопка со стрелкой", "Сообщение", 0);
    LPNMTOOLBARA lpnmtb = (LPNMTOOLBAR) lParam;
    DWORD xyPos = GetMessagePos();
    WORD xPos = LOWORD(xyPos), yPos = HIWORD(xyPos);
    TrackPopupMenu(hEditMenu, TPM_LEFTALIGN | TPM_LEFTBUTTON | TPM_TOPALIGN, xPos, yPos, 0, hwnd, NULL);
    break;
    }
    }
    break;
    }
     
Загрузка...
Похожие Темы - Toolbar Winapi
  1. Zerkal0
    Ответов:
    0
    Просмотров:
    3.794
  2. susinmn
    Ответов:
    3
    Просмотров:
    1.219
  3. sasha465
    Ответов:
    2
    Просмотров:
    1.900
  4. lensu1
    Ответов:
    5
    Просмотров:
    2.729
  5. Shouldercannon
    Ответов:
    3
    Просмотров:
    3.775

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