PopMenu菜单的实现

mfc初学,本人小白

需要在CListCtrl里面加入右键菜单,用到消息NM_RCLICK。然后调用在添加Menu资源。

void CDriverCard_LHS_2_1Dlg::OnNMRClickList1(NMHDR *pNMHDR, LRESULT *pResult)//处理单击鼠标右键
{
	LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<NMITEMACTIVATE*>(pNMHDR);//此处IDE出错,少个*
	// TODO: 在此添加控件通知处理程序代码
	CPoint _point;
	::GetCursorPos(&_point);
	CMenu _menu;
	VERIFY(_menu.LoadMenu(IDR_MENU1));
	//::SetMenu(m_hWnd,&_menu);
	CMenu* _pPopmenu = _menu.GetSubMenu(0);
	ASSERT(_pPopmenu != NULL);
	_pPopmenu->TrackPopupMenu(TPM_RIGHTBUTTON|TPM_LEFTALIGN,_point.x,_point.y,this);
	
	

	*pResult = 0;
}

过程是先获得鼠标位置,在将Menu资源载入。

 

你可能感兴趣的:(null,ide,mfc,menu)