1.程序运行后新建一个最大化的子窗口
2.变换菜单,子窗口的最小化、最大化、关闭按钮不见了
请教如何解决?
解决方案 »
- 怎样实现与SHSimpleIDListFromPath同样的功能?
- 我HOOK了某个类的构造函数,想得到其对象地址,并用这个地址调用其成员函数,请帮我看看错在何处。
- 这绝对是个很弱的问题,但我就是搞不定,郁闷………………
- 科学计算法表示的算法问题?
- 热烈庆祝我的生日!
- 新鲜出炉!!! 2004上海程序员生存现状调查!!! 答者有分!!!
- 多文档打开文件时,如何根据打开的文件切换到相应的界面视图?
- 嵌套类如何调用外围类的函数?
- 请问各位大侠哪里有VisualC++6.0技术内幕的配套光盘可以下载?我现在在看第五版,书里面错误不少,敲起来挺费力,希望各位帮个忙。
- 怎么样用InstallShield制作安装程序?
- 百思不得其解?
- 字符串问题
SetWindowLongModifyStyle
之类的函数
修改窗口样式以前
先获取GetWindowStyle
GetWindowLong
把样式保存起来,以后好恢复上面缺少了
WS_SYSMENU,WS_MINIMIZEBOX, and WS_MAXIMIZEBOX ,之类的样式
CMenu * pMenu;
pMenu = new CMenu;
pMenu->LoadMenu(IDR_NEWMENU);
AfxGetApp()->m_pMainWnd->SetMenu(pMenu);原来肯定是有按钮的,就使用上面的代码更换了菜单
pMenu.Detach();
加进去看看
1.用向导生成一个MDI MFC
2.新建菜单IDR_NEWMENU
3.在原菜单中增加测试菜单项,在其响应函数中增加上述代码
CMenu * pMenu;
pMenu = new CMenu;
pMenu->LoadMenu(IDR_NEWMENU);
AfxGetApp()->m_pMainWnd->SetMenu(pMenu);
4.在新菜单中增加恢复菜单项,在其响应函数中增加类似代码,使菜单恢复运行,可以看到上述现象(子窗口一定要最大化),多操作几次并新建子窗口还有其他的BUG
增加AfxGetApp()->m_pMainWnd->DrawMenuBar();
pMenu.Detach();
之后还是不行
2.新建菜单IDR_NEWMENU
3.在原菜单中增加测试菜单项,在其响应函数中增加上述代码
CMenu * pMenu;
pMenu = new CMenu;
pMenu->LoadMenu(IDR_NEWMENU);
AfxGetApp()->m_pMainWnd->SetMenu(pMenu);
4.在新菜单中增加恢复菜单项,在其响应函数中增加类似代码,使菜单恢复运行,可以看到上述现象(子窗口一定要最大化)。
MDI里面要换菜单可以参考http://blog.csdn.net/jiangsheng/archive/2003/11/09/3795.aspx