添加菜单事件

来源:互联网 发布:linux 没有telnet 编辑:程序博客网 时间:2024/05/20 06:52

一.添加静态菜单

1. 填加一个菜单资源

2. 主对话框 -> 属性 -> Menu -> 选中菜单ID

3.添加事件,如<图1>
 
              ----------图1-----------



 

二. 添加动态菜单

1.   
 CMenu mu;
 mu.CreatePopupMenu(); //创建弹出菜单
 CMenu *pTop = GetMenu();
 pTop->AppendMenuW(MF_POPUP, (UINT)mu.m_hMenu, L"动态菜单!"); //菜单名
 mu.AppendMenuW(MF_STRING, 40007<新建的ID> , L"动态1");
 mu.AppendMenuW(MF_STRING, 40008, L"动态2");
 mu.AppendMenuW(MF_STRING, 40009, L"动态3");
 DrawMenuBar();  //刷新创建的菜单

 

三.右键弹出菜单

1. 在主对话框类添加成员变量: CStatusBar m_status;

2. 类向导 -> 消息 -> WM_RBUTTONDOWN<右键点击消息>

3.  
 //GetCursorPos(&pt)  获取鼠标的屏幕坐标
 CMenu mu;
 mu.LoadMenuW(IDR_MENU1);
 CMenu *pSub = mu.GetSubMenu(0 <图2> );
 ClientToScreen(&point);
 TrackPopupMenu(pSub->m_hMenu, TPM_LEFTALIGN, point.x, point.y, 0, m_hWnd, NULL);
 

    ---------图2--------

 

 

 

 

 

 

 

 

 

 

 

 

 

 

原创粉丝点击