1、如何创建一个基于CMenu类的子类CIconMenu?
方法:
点击new class,出现New Class 对话框后,在Class type中选择Generic Class,在Name中输入CIconMenu,Base class(es)Derived From下方输入CMenu后,点击确定即可。
2、在系统菜单添加菜单项
首先在创建一个基于对话框的应用程序
方法:file——》new——》MFC AppWizard【exe】输入工作名及相应的路径后点击确定,选择Dialog based
然后在对话框类中添加一个菜单项指针public CMenu * m_pMenu
在对话框初始化函数OnInitDialog()中代码末尾添加如下代码:
m_pMenu = GetSystemMenu(FALSE);
m_pMenu->AppendMenu(MF_STRING,IDI_ICON1,"系统菜单");
将OnSysCommand()函数改为如下
void CSysmenuDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else if (nID == IDI_ICON1)
{
MessageBox("系统菜单","提示",MB_OK|MB_ICONINFORMATION);
}/*该处是我们手动添加的,其它是自动生成的*/
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
待续