Re: непонятки с меню в ActiveX
От: pigeon Великобритания
Дата: 08.02.07 08:06
Оценка:
Здравствуйте, pigeon, Вы писали:

Отвечу себе сам .

Сначала пытался сделать как советовал algol Re: Обработчик нажатия правой кнопки
Автор: algol
Дата: 29.01.07
, но PreTranslateAccelerator у меня не вызывался , проблема возникала при вызове ф-и TrackPopupMenu изменив свой обработчик на ( в MSDN нашел пример ) на

LRESULT CDiskListView::OnNMRClick(LPNMHDR pnmh)
{
    //for ListView - (LPNMITEMACTIVATE)pnmh
    //for StatusBar    - (LPNMMOUSE)pnmh
    //for ToolBar    - (LPNMMOUSE)pnmh
    //Return nonzero to not allow the default processing
    LPNMITEMACTIVATE item = (LPNMITEMACTIVATE)pnmh;

        POINT pt;
        GetCursorPos(&pt);    

        SetForegroundWindow(m_hWnd);

        // Display the menu
        TrackPopupMenu(   m_contextMenu.GetSubMenu(0),
            TPM_RIGHTBUTTON,
            pt.x,
            pt.y,
            0,
            m_hWnd,
            NULL);

        ::PostMessage(m_hWnd, WM_NULL, 0, 0);
        return TRUE;
    }
    return TRUE;
}


проблема исчезла , может временно может навсегда.
Кто-нибудь объяснит?
winamp интернеееееет
Premature optimization is the root of all evil in programming. Donald Knuth
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.