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

大概就是这样的效果:

全屏前:

全屏后:

相关推荐
liulilittle33 分钟前
C++/CLI与标准C++的语法差异(一)
开发语言·c++·.net·cli·clr·托管·原生
小狄同学呀39 分钟前
VS插件报错,g++却完美编译?API调用错因分析
c++
程序员编程指南42 分钟前
Qt 数据库连接池实现与管理
c语言·数据库·c++·qt·oracle
小乖兽技术1 小时前
C#与C++交互开发系列(二十四):WinForms 应用中嵌入C++ 原生窗体
c++·c#·交互
张北北.1 小时前
【深入底层】C++开发简历4+4技能描述6
java·开发语言·c++
刚入坑的新人编程2 小时前
暑期算法训练.9
数据结构·c++·算法·leetcode·面试·排序算法
破刺不会编程4 小时前
linux线程概念和控制
linux·运维·服务器·开发语言·c++
程序员编程指南4 小时前
Qt OpenGL 集成:开发 3D 图形应用
c语言·数据库·c++·qt·3d
小徐不徐说5 小时前
动态规划:从入门到精通
数据结构·c++·算法·leetcode·动态规划·代理模式
程序员编程指南6 小时前
Qt 网络编程进阶:RESTful API 调用
c语言·网络·c++·qt·restful