关于MFC ribbon界面全屏的问题

想实现ribbon界面全屏,代码:

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

    //隐藏菜单栏          
    SetMenu(NULL);          

    // 保存以前的位置信息          
    GetWindowRect(&m_mainRect);          
    // 去除主窗口的标题          
    LONG style=::GetWindowLong(m_hWnd,GWL_STYLE);          
    style&=~WS_CAPTION;          
    ::SetWindowLong(m_hWnd,GWL_STYLE,style);           

    //得到当前系统的分辨率          
    int screenx=GetSystemMetrics(SM_CXSCREEN);          
    int screeny=GetSystemMetrics(SM_CYSCREEN);          

    // 全屏显示          
    SetWindowPos(NULL,-4,-4,screenx+8,screeny+8,SWP_NOZORDER);          
    style=::GetWindowLong(this->m_hWnd,GWL_STYLE);          

}

  调用此函数实现全屏后,由于还没实现退出全屏,我就强行关闭了软件
    后面修改代码在oncreate函数里调用退出全屏函数:
    void CMainFrame::FullScreenModeOff()          
{           
    //恢复窗口标题          
    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_mainRect);          

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

}   
    退出全屏后也看不到ribbon界面了,只剩下一个标题栏,而且我将该项目删除之后重新新建一个

名字相同的mfc office的单文档程序,直接跑出来也是看不到ribbon界面,只有一个标题栏
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐