哈哈,其实很easy的 (如果我没有理解错你问的问题的话) 给你一段用api写的代码其中hWnd为主窗体的句柄 HMENU SysMenu; // to modify the System Menu ! Cool! SysMenu = ::GetSystemMenu(hWnd,False); //删除原来的 DeleteMenu(SysMenu,SC_MOVE,MF_BYCOMMAND); DeleteMenu(SysMenu,SC_MAXIMIZE,MF_BYCOMMAND); DeleteMenu(SysMenu,SC_MINIMIZE,MF_BYCOMMAND); DeleteMenu(SysMenu,SC_SIZE,MF_BYCOMMAND); DeleteMenu(SysMenu,SC_RESTORE,MF_BYCOMMAND); DeleteMenu(SysMenu,0,MF_BYPOSITION); //添加自己的 //IDM_ABOUT,IDM_OPTION为常数,当点击这个菜单条时会向程序发送WM_COMMAND消息 //在你的程序中处理好这两个command消息即可 InsertMenu(SysMenu,1,MF_STRING or MF_BYPOSITION,IDM_ABOUT,'About'); InsertMenu(SysMenu,1,MF_STRING or MF_BYPOSITION,IDM_OPTION,'Option'); InsertMenu(SysMenu,1,MF_SEPARATOR or MF_BYPOSITION,0,'');具体的函数说明请参考msdn上的帮助文档
给你一段用api写的代码其中hWnd为主窗体的句柄 HMENU SysMenu;
// to modify the System Menu ! Cool!
SysMenu = ::GetSystemMenu(hWnd,False);
//删除原来的
DeleteMenu(SysMenu,SC_MOVE,MF_BYCOMMAND);
DeleteMenu(SysMenu,SC_MAXIMIZE,MF_BYCOMMAND);
DeleteMenu(SysMenu,SC_MINIMIZE,MF_BYCOMMAND);
DeleteMenu(SysMenu,SC_SIZE,MF_BYCOMMAND);
DeleteMenu(SysMenu,SC_RESTORE,MF_BYCOMMAND);
DeleteMenu(SysMenu,0,MF_BYPOSITION);
//添加自己的
//IDM_ABOUT,IDM_OPTION为常数,当点击这个菜单条时会向程序发送WM_COMMAND消息
//在你的程序中处理好这两个command消息即可
InsertMenu(SysMenu,1,MF_STRING or MF_BYPOSITION,IDM_ABOUT,'About');
InsertMenu(SysMenu,1,MF_STRING or MF_BYPOSITION,IDM_OPTION,'Option');
InsertMenu(SysMenu,1,MF_SEPARATOR or MF_BYPOSITION,0,'');具体的函数说明请参考msdn上的帮助文档
得到菜单用::getsystemmenu()具体参数见 msdn
我自定义了一个
居然能够用。