【远控编写05】客户端界面的设计和编写--列表中显示弹出菜单

来源:互联网 发布:网络购物的优点 编辑:程序博客网 时间:2024/06/04 08:13

1.添加菜单资源:

 

2.添加我们的代码

       a.添加右键列表的响应函数(NM_RCLICK)

       b.添加代码

void CPCRemoteDlg::OnNMRClickOnline(NMHDR *pNMHDR, LRESULT *pResult){LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);// TODO: 在此添加控件通知处理程序代码CMenupopup;// 声明一个菜单变量popup.LoadMenu(IDR_MENU_ONLINE);// 载入菜单资源CMenu*pM = popup.GetSubMenu(0);// 得到菜单项CPointp;GetCursorPos(&p);// 得到鼠标指针的位置intcount = pM->GetMenuItemCount();// 得到菜单的个数if (m_CList_Online.GetSelectedCount() == 0)// 如果没有选中列表中的条目{ for (int i = 0; i < count; i++)//遍历每一个菜单{pM->EnableMenuItem(i, MF_BYPOSITION | MF_DISABLED | MF_GRAYED);          //菜单全部变灰}}pM->TrackPopupMenu(TPM_LEFTALIGN, p.x, p.y, this);//在指定位置显示菜单*pResult = 0;}


 

3.运行效果: