if (!m_wndMenuBar.Create(this))
这句后,从MainFrame上执行GetMenu就不能获得正确的CMenu指针了,以后的GetMenu就只能返回0了。要取得CMenu指针,需要执行:
m_wndMenuBar.GetMenu();
如果想要修改菜单的风格,象以前那样利用SetMenuInfo()函数,无法改变菜单的风格。
这是由于Microsoft引入了UI管理器(VisualManager)来管理包括Menu、Tasks pane、 Auto-hide buttons、Edit box、Popup window、Ribbon control等在内的视图风格。
因此,要改变视图的风格,则需要利用这个UI管理器来实现,也可以利用它实现换肤。
以缺省生成的MFC单文档程序为例,MainFrame中有一个OnApplicationLook()函数,在该函数中对设置不同的风格管理器:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/57623.html