VC++显示弹出式菜单的两种方法

王朝vc·作者佚名  2006-01-09
宽屏版  字体: |||超大  

VC++显示弹出式菜单的两种方法

曾棕根

2005-1-26

方法一:调入菜单资源

/////////////////////////////////////////////////////////////////////////////////////////////

// CMy1View message handlers

///先在Menu资源中添加弹出式菜单,命名:IDR_MENU1

///再添加CView类的消息WM_CONTEXTMENU

///在消息处理函数中添加函数

void CMy1View::OnContextMenu(CWnd* pWnd, CPoint point)

{

CMenu menu;

menu.LoadMenu(IDR_MENU1);

CMenu * popup= menu.GetSubMenu(0);///0是指IDR_MENU1中第0列菜单。可以随便取一项菜单,编号0~n

popup->TrackPopupMenu(TPM_LEFTALIGN,point.x,point.y,this);

}

///////////////////////////////////////////////////////////////////////////////////////////////

方法二:自主添加菜单项

///自己创建菜单项

void CMy2View::OnContextMenu(CWnd* pWnd, CPoint point)

{

// TODO: Add your message handler code here

CMenu menuPopup;

if(menuPopup.CreatePopupMenu())

{

menuPopup.AppendMenu(MF_STRING,ID_FILE_SAVE,"保存文件\tCtrl+S");

menuPopup.AppendMenu(MF_STRING,ID_FILE_PRINT,"打印文件\tCtrl+P");

menuPopup.TrackPopupMenu(TPM_LEFTALIGN,point.x,point.y,this);

}

}正文

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有