void CMainFrame::FullScreen()
{
    m_wndRibbonBar.ShowWindow(SW_HIDE);//隐藏工具栏     
    m_wndStatusBar.ShowWindow(SW_HIDE);//隐藏状态栏

m_menuMainWnd = GetMenu();
    //隐藏菜单栏          
    SetMenu(NULL);

// 保存以前的位置信息          
    GetWindowRect(&m_FullScreenRect);

// 去除主窗口的标题          
    LONG style=::GetWindowLong(m_hWnd,GWL_STYLE);          
    style&=~WS_CAPTION;          
    ::SetWindowLong(m_hWnd,GWL_STYLE,style);

// 使客户区无边框
    ModifyStyleEx(WS_EX_CLIENTEDGE, 0, SWP_FRAMECHANGED);
    ModifyStyleEx(WS_EX_CLIENTEDGE, NULL);

//得到当前系统的分辨率          
    int screenx=GetSystemMetrics(SM_CXSCREEN);          
    int screeny=GetSystemMetrics(SM_CYSCREEN);          
    
    // 全屏显示         
    SetWindowPos(NULL,0,0,screenx,screeny,SWP_NOZORDER);    
    style=::GetWindowLong(this->m_hWnd,GWL_STYLE);

m_bFullScreen = TRUE;
}

//退出全屏
void CMainFrame::EndFullScreen()
{    
    //恢复窗口标题          
    LONG style=::GetWindowLong(m_hWnd,GWL_STYLE);          
    style|=WS_CAPTION;          
    ::SetWindowLong(m_hWnd,GWL_STYLE,style);           
    //如果需要,显示工具栏  
    m_wndRibbonBar.ShowWindow(SW_SHOW);           
    //如果需要,显示状态栏       
    m_wndStatusBar.ShowWindow(SW_SHOW);           
    //恢复窗口以前的大小          
    MoveWindow(&m_FullScreenRect);

//恢复菜单栏          
    this->SetMenu(m_menuMainWnd);

m_bFullScreen = FALSE;
}

最后要在C....View::PreCreateWindow()添加:cs.style &= ~WS_BORDER;

一切OK!!!

MFC 带Ribbonbar的窗口 实现全屏和取消全屏的更多相关文章

  1. H5 video全屏与取消全屏兼容

    H5 video全屏与取消全屏各浏览器兼容,  requestFullscreen()全屏方法,exitFullscreen()退出全屏方法.兼容各个浏览器与css3兼容一样加个前缀即可. // 全屏 ...

  2. 使用AngularJS实现简单:全选和取消全选功能

    这里用到AngularJS四大特性之二----双向数据绑定 注意:没写一行DOM代码!这就是ng的优点,bootstrap.css为了布局,JS代码也只是简单创建ng模块和ng控制器 效果: < ...

  3. checkbox 全選、取消全選、反選

    在寫一個全選.取消全選.反選的功能時. 未來元素[type='checkbox'],在使用了jquery-1.11.1.min.js版本的jquery時: 功能版本1: 存在的問題,當使用了attr時 ...

  4. jQuery --checkbox全选和取消全选简洁高效的解决办法

    最近在公司做了一个小项目,其中有一个全选和取消全选的这么一个模块,搞了半天找不到一种最佳的解决方案!后来通过各种努力找到了一种简洁高效的解决办法,这里想和大家分享一下.有问题的话,还望各路大神指导一二 ...

  5. bootstrap实现checkbox全选、取消全选

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <!-- 最新版本的 ...

  6. JS对checkbox全选和取消全选

    需求:checkbox控制列表数据全选与取消全选择. 效果图: 1.html <body > <input type="button" name="in ...

  7. react实现全选、取消全选和个别选择

    react里面实现全选和取消全选,个别选择等操作,效果如下 代码: import React, {Component} from 'react' export default class Demo e ...

  8. DataGridView添加一行数据、全选、取消全选、清空数据、删除选中行

    .net 2005下的Windows Form Application,一个DataGridView控件和4个Button,界面设置如下:         代码如下,有注解,相信大家都看得明白:   ...

  9. js实现checkbox组 全选和取消全选

    做后台管理程序时,用到一个checkbox组的全选和取消全选的功能, 主要是逻辑上的坑,理清后大概是: 1.全选点击后,小弟1~4都要选上,点击取消,小弟们也要取消 2.只要有一个小弟取消时,全选要取 ...

随机推荐

  1. 监测mysql错误日志,有错误自动邮件报警

    监测mysql错误日志,有错误自动邮件报警 http://blog.csdn.net/yabingshi_tech/article/details/51443401 MySQL:监控慢日志.错误日志. ...

  2. 如何将json拼接在url后面当做地址栏参数?

    function param(data) { let url = '' for (var k in data) { let value = data[k] !== undefined ? data[k ...

  3. 如何简单的测试kubernetes的dns add-ons是否工作正常?

    1,新建一个yaml文件. apiVersion: v1 kind: Pod metadata: name: busybox namespace: default spec: containers: ...

  4. Monty Hall悖论

    Monty Hall悖论又称为蒙提·霍尔悖论.三门问题.Monty Hall是上个世纪60年代,电视游戏节目“Let's Make a Deal”的主持人,这个悖论便是以他的名字来命名的.节目的规则是 ...

  5. [BZOJ5305][Haoi2018]苹果树 组合数

    题目描述 小 C 在自己家的花园里种了一棵苹果树, 树上每个结点都有恰好两个分支. 经过细心的观察, 小 C 发现每一天这棵树都会生长出一个新的结点. 第一天的时候, 果树会长出一个根结点, 以后每一 ...

  6. 经验分享:如何系统学习 Web 前端技术?

    这篇文章主要是面向小白用户的,如果你有些基础,当然也建议你看看,尤其是最后一个主题,或许你能得到一些启发.本文的观点,纯属个人自以为是的想法,不是真理,仅供参考. 抛开具体技术细节,先主要谈谈程序员如 ...

  7. Mybatis框架-2

    1.Mybatis中的接口形式 在Mybatis中使用接口形式将通过代理对象调用方法,从而实现sql的执行 1)定义一个接口 package mapper; import java.util.List ...

  8. mysql source 乱码

    mysql -u root -p --default-character-set=utf8 use dbname source /root/newsdata.sql

  9. Eclipse中快速 打出 main方法的签名

    有时,我们创建一个空白类,需要打出main方法 public static void main(String [] args){ } 在Eclipse先敲main字符,然后按住ALT+/,再按回车即可 ...

  10. thinkphp的where方法的使用

    1.Thinkphp中where()条件的使用 总是有人觉得,thinkphp的where()就是写我要进行增加.查询.修改.删除数据的条件,很简单的,其实我想告诉你,where()是写条件语句的,但 ...