VC++ 实现全屏
来源:互联网 发布:剑三丐帮正太捏脸数据 编辑:程序博客网 时间:2024/04/27 20:25
实现全屏的函数如下,作为主框架窗口的成员函数,调用即可。
void CMainFrame::FullScan()
{
static bool isfull=true;
static CRect m_OldWndRect;
static CMenu m_OrgMenu;
if(isfull==true)
{
GetWindowRect(&m_OldWndRect);//得到原窗口位置
//隐藏工具栏和状态栏
if(m_wndToolBar.IsWindowVisible())
{
m_wndToolBar.ShowWindow(SW_HIDE);
}
if(m_wndStatusBar.IsWindowVisible())
{
m_wndStatusBar.ShowWindow(SW_HIDE);
}
//隐藏菜单栏
CMenu* pOldMenu=GetMenu();
m_OrgMenu.Attach(pOldMenu->Detach());
SetMenu((CMenu*)NULL);
//隐藏标题栏
LONG style=::GetWindowLong(m_hWnd,GWL_STYLE);
style&=~WS_CAPTION;
::SetWindowLong(m_hWnd,GWL_STYLE,style);
//窗体最前
::SetWindowPos(AfxGetMainWnd()->m_hWnd,HWND_TOPMOST,-1,-1,-1,-1,SWP_NOMOVE|SWP_NOSIZE);
//全屏
ShowWindow(SW_SHOWMAXIMIZED);
RecalcLayout();//重绘框架
isfull=false;
}
else
{
//显示工具栏和状态栏
m_wndToolBar.ShowWindow(SW_SHOW);
m_wndStatusBar.ShowWindow(SW_SHOW);
//显示菜单栏
SetMenu(&m_OrgMenu);
m_OrgMenu.Detach();
//显示标题栏
LONG style=::GetWindowLong(m_hWnd,GWL_STYLE);
style|=WS_CAPTION;
::SetWindowLong(m_hWnd,GWL_STYLE,style);
//取消窗体最前
::SetWindowPos(AfxGetMainWnd()->m_hWnd,HWND_NOTOPMOST,m_OldWndRect.left,m_OldWndRect.top,m_OldWndRect.right-m_OldWndRect.left,m_OldWndRect.bottom-m_OldWndRect.top,SWP_SHOWWINDOW);
//恢复
ShowWindow(SW_SHOWNOACTIVATE);
MoveWindow(m_OldWndRect);
RecalcLayout();//重绘框架
isfull=true;
}
return;
}
- VC++ 实现全屏
- VC中实现全屏
- VC实现全屏显示
- VC++ 实现全屏
- VC++ 实现全屏
- VC实现全屏功能
- VC++实现程序全屏显示
- VC++实现程序全屏显示
- VC MFC 全屏的快捷实现方法
- VC++单文档的全屏实现
- 在VC中实现全屏窗口程序
- vc实现窗口全屏的一些方法
- 在VC中实现全屏窗口程序
- vc实现窗口全屏的一些方法
- 怎样实现全屏显示(vc)
- VC 全屏
- 在VC++6.0开发中实现全屏显示
- VC++实现单文档程序的全屏显示及恢复
- c#中数组,类型转换,using语句的其他用法
- MFC缺省调用约定
- 实验9
- 邮件服务器兼容——收获点滴
- DX
- VC++ 实现全屏
- spring Remoting 实现分布式
- 一个IT人士的个人经历,给迷失方向的朋友
- 整除 取余
- 《C语言程序设计现代方法》笔记
- 再次感受德国工业的强悍
- 第一章 关系数据库设计
- DS-5 的示例项目
- 年月日的正则表达式