使用上下文菜单
Windows 95应用程序支持单击鼠标右键弹出上下文菜单的功能,这可通过处理 WM_CONTEXTMENU消息来实现。当在窗口内单击鼠标右键时,窗口将接收到 WM_CONTEXTMENU消息,在该消息的处理函数内装载上下文菜单,并调用 CMenu::TrackPopupMenu函数便可显示上下文菜单。CMenu::TrackPopupMenu函数的
原型如下:
BOOL TrackPopupMenu(
UINT nFlags,// 显示和选取方式标志
int x, int y, // 显示菜单的左上角坐标
CWnd* pWnd, // 接收菜单操作的窗口对象
LPCRECT lpRect = NULL // 敏感区域
);
为了使用上下文菜单,首先应在资源编辑器中编制好上下文菜单,假设上下文菜单名 为IDR_MENU_CONTEXT;其次,用ClassWizard给窗口增加处理消息WM_CONTEXTMENU的 函数OnContextMenu,以及各菜单命令的处理函数;然后编写相应的代码。
下面的是OnContextMenu函数的代码实例:
void CEllipseWndDlg::OnContextMenu(CWnd* pWnd, CPoint point)
{
CMenu menu;
// 装入菜单
menu.LoadMenu(IDR_MENU_CONTEXT);
// 显示菜单
menu.GetSubMenu(0)->TrackPopupMenu(
TPM_LEFTALIGN|TPM_LEFTBUTTON|TPM_RIGHTBUTTON,
point.x, point.y, this);
}
窗口响应右键弹出菜单
最新推荐文章于 2023-02-09 11:07:55 发布