MFC实现全屏功能

之前全屏都是参考:
MFC单文档(SDI)全屏程序的实现

主要思路就是将各种菜单工具栏隐藏恢复。

随着MFC的升级,MFC框架本身就具备了全屏的功能。

微软有一个全屏实现类:
CFullScreenImpl Class

managing full-screen mode: IsFullScreen, ShowFullScreen, EnableFullScreenMainMenu, and EnableFullScreenMode.

根据MFC的描述,不需要继承CFullScreenImpl 类,它已经集成到了框架类中,用以下方法即可进行管理。

首先在框架的oncreate方法中调用EnableFullScreenMode(2000);

其中2000是一个ID,会在全屏时自动多出一个按钮,按钮ID就是这个2000,实现这个COMMANDID,即可对应关闭全屏,当然用escape键也可以关闭全屏

这个ID可以随便取一个,不要冲突接口

然后在菜单或按钮中调用方法ShowFullScreen();即可实现全屏

默认是显示菜单的,可以用在oncreate调用EnableFullScreenMainMenu(FALSE);的方法,即可不显示菜单

大概就是这样的效果:

全屏前:

全屏后:

相关推荐
山登绝顶我为峰 3(^v^)31 小时前
C/C++ 交叉编译方法
java·c语言·c++
郝学胜-神的一滴5 小时前
中级OpenGL教程 013:渲染器类架构设计与逐帧渲染流程详解
开发语言·c++·unity·游戏引擎·图形渲染·opengl·unreal
小小龙学IT6 小时前
C++ 并发编程深度解析:从内存模型到无锁数据结构
数据结构·c++
凯瑟琳.奥古斯特7 小时前
力扣1013三等分解法与C++实现
开发语言·c++·算法·leetcode·职场和发展
一拳一个呆瓜7 小时前
【STL】iostream 编程:缓冲区的作用
c++·stl
我不是懒洋洋7 小时前
从零实现一个分布式任务调度器:XXL-JOB的核心设计
c++
凯瑟琳.奥古斯特8 小时前
力扣1012数位DP解法详解
开发语言·c++·算法·leetcode·职场和发展
chh5639 小时前
C++--string
java·开发语言·网络·c++·学习
J_yyy9 小时前
基于Reactor的文件管理服务开发笔记
c++·笔记·reactor·多线程编程·muduo