MFC右键弹出菜单的示例

右键弹出菜单,这是个简单的问题,今天试了一下,记录下。

以对话框为例。

方法一,使用menu资源:

1.增加一个菜单资源,在resources里插入一个menu即可

2.增加成员变量CMenu m_menu;

3.OnInitDialog里,m_menu.LoadMenu(IDR_MENU1);

4.OnRButtonDown里,

    ClientToScreen(&point);
    m_menu.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN|TPM_LEFTBUTTON|TPM_RIGHTBUTTON, point.x,point.y,this);


方法二,使用自建菜单,不用增加MENU资源:

1.增加成员变量CMenu m_menu;

2.OnInitDialog里,

    m_menu.CreatePopupMenu();
    m_menu.AppendMenu(MF_STRING,1000,"1");
    m_menu.AppendMenu(MF_STRING,1001,"2");

3.OnRButtonDown里,

    ClientToScreen(&point);
    m_menu.TrackPopupMenu(TPM_LEFTALIGN|TPM_LEFTBUTTON|TPM_RIGHTBUTTON, point.x,point.y,this);


你可能感兴趣的:(Visual,C++)