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);的方法,即可不显示菜单

大概就是这样的效果:

全屏前:

全屏后:

相关推荐
Murphy_lx8 小时前
C++ std_stringstream
开发语言·c++·算法
Mr.Winter`8 小时前
基于Proto3和单例模式的系统参数配置模块设计(附C++案例实现)
c++·人工智能·单例模式·机器人
哭泣方源炼蛊8 小时前
HAUE 新生周赛(七)题解
数据结构·c++·算法
_OP_CHEN9 小时前
从零开始的Qt开发指南:(五)Qt 常用控件之 QWidget(上):解锁 Qt 界面开发的核心基石
开发语言·c++·qt·前端开发·qwidget·gui开发·qt常用控件
sulikey10 小时前
深入讲解:什么是 RAII(资源获取即初始化)——原理、实现、面试常考点与实战示例
c++·面试·智能指针·raii·shared_ptr·auto_ptr·资源获取即初始化
艾莉丝努力练剑10 小时前
【Git:多人协作】Git多人协作实战:从同分支到多分支工作流
服务器·c++·人工智能·git·gitee·centos·项目管理
散峰而望18 小时前
C++数组(二)(算法竞赛)
开发语言·c++·算法·github
利刃大大18 小时前
【动态规划:背包问题】完全平方数
c++·算法·动态规划·背包问题·完全背包
笑非不退19 小时前
C# c++ 实现程序开机自启动
开发语言·c++·c#
AA陈超20 小时前
从0开始学习 **Lyra Starter Game** 项目
c++·笔记·学习·游戏·ue5·lyra