关键技术:
级联菜单的创建主要是如何设置菜单项的属性,如果将菜单项的属性设置为PoiMip则菜单项的右侧就会出 现三角号。菜单属性设置如图(a)、(b)所示。
图(a)级联菜单
图(b)勾选“Pop-up”属性
设计过程:
(1)在工作区窗口中选择资源视图(ResourceView),用鼠标右键单击一个节点,在弹出的快捷菜单中选 择Insert命令,将打开插入资源对话框。
(2)在资源类型列表中选择Menu节点,单击New按钮,将创建一个菜单。
(3)在菜单设计窗口中按Enter键打开属性窗口,在Caption编辑框中设计菜单标题。
(4)在新建菜单下的虚线框上按Enter键打开属性窗口可以添加子菜单,在属性窗口中设置子菜单ID和 菜单的标题。
(5)想在哪个菜单下创建级联菜单就在哪个菜单的属性窗口选中Pop-up复选框,这样,在菜单项的右侧 将显示一个箭头,在箭头指向的位置就可以创建级联菜单的子菜单。
(6)在对话框中插入菜单:右击“对话框”--》属性--》Menu: IDR_MENU1
图(c)选择“菜单”
(7)设置大图标和小图标的ID号,大图标:ID_BIG,小图标:ID_SAMLL。
图(d)大图标的ID号
图(e)小图标的ID号
(8)为大图标和小图标菜单,分别关联菜单响应函数: ON_COMMAND。在ClassView选项卡中,右击XXXDlg-->Add Windows Message Handler-->在“Class or object to handle”里,选择ID_BIG;在“New Window message/events”里选择COMMAND-->Edit Existing, 如下:(ID_SMALL的操作也是这样)
图(f)为菜单添加响应函数
OnBig()的代码如下:
void CMenuChildDlg::OnBig()
{
// TODO: Add your command handler code here
MessageBox("您选择的是大图标方式浏览","浏览",MB_OK);
}
OnSmall()的代码如下:
void CMenuChildDlg::OnSmall()
{
// TODO: Add your command handler code here
MessageBox("您选择的是小图标方式浏览","浏览",MB_OK);
}
效果如下:
,