Last Updated 2002/11/21
Programming Tips Visual C++ MFC メニュー  索 引 
ポップアップメニューの表示
2002/11/21

ポップアップメニューを表示するには以下の様にする.

void CView::OnContextMenu(CWnd* pWnd, CPoint point) 
{
    // Shift + F10 に備えてカーソルポジションを取得
    GetCursorPos(&point);

    CMenu mnPopup;
    VERIFY( mnPopup.LoadMenu(IDR_POPUP) );

    CMenu *pPopup = mnPopup.GetSubMenu(0);
    ASSERT(pPopup != NULL);
    SetForegroundWindow();
    pPopup->TrackPopupMenu( TPM_LEFTALIGN | TPM_RIGHTBUTTON,
                    point.x, point.y, AfxGetMainWnd());

}

TrackPopupMenu() に渡す座標はスクリーン座標である.

また,ポップアップメニューのリソース定義をする場合は空のタイトルの下に作成しなければならない.


参照
ポップアップメニューの表示座標がずれる
前後のTips
ポップアップメニューの表示

DSS ProgrammingTipsCGI Ver2.01