收录日期:2019/02/16 20:12:24 时间:2016/05/30 10:06:31 标签:界面
如何全屏幕显示
把窗口的客户区弄到和屏幕一样大。
ShowWindow(hWnd, SW_SHOWMAXIMIZED  );
在oncreat函数中加入
ShowWindow(hWnd, SW_SHOWMAXIMIZED  );
在ShowWindow函数的参数中设置 SW_SHOWMAXIMIZED
如何实现彻底全屏?
http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=184538
在CMainFrame类中添加下列成员变量和成员函数(使用ClassWizard),下面是这些变量和函数的功能说明:

成员变量:
BOOL m_bFullScreen; //全屏幕显示标志
CRect m_FullScreenWindowRect; //全屏幕显示窗口Rect
WINDOWPLACEMENT m_wpPrev; //用于保存正常视图时的窗口位置信息
CToolBar * m_wndFullScreenBar; //全屏幕显示时的浮动工具条

成员函数:
void OnMenuFullscreen(); //全屏幕显示的处理函数
void OnGetMinMaxInfo(); //捕获WM_GETMINMAXINFO消息以便允许你增加窗口大小
void OnUpdateViewFullScreen(); //更新“全屏幕显示”菜单的状态

源码

void CMainFrame::OnMenuFullscreen()
{//全屏幕显示的处理函数
RECT rectDesktop;
WINDOWPLACEMENT wpNew;

if (m_bFullScreen)
{//全屏幕显示模式
//隐藏工具条和状态条
m_wndStatusBar.ShowWindow(SW_HIDE);
m_wndToolBar.ShowWindow(SW_HIDE);

//保存正常视图时的窗口位置信息以便恢复原来状态
GetWindowPlacement (&m_wpPrev);
m_wpPrev.length = sizeof m_wpPrev;

//调整RECT为新的窗口尺寸
::GetWindowRect ( ::GetDesktopWindow(), &rectDesktop );
::AdjustWindowRectEx(&rectDesktop, GetStyle(), TRUE, GetExStyle());

//保存RECT以便OnGetMinMaxInfo()使用
m_FullScreenWindowRect = rectDesktop;

wpNew = m_wpPrev;
wpNew.showCmd = SW_SHOWNORMAL;
wpNew.rcNormalPosition = rectDesktop;

//生成新的工具条
m_wndFullScreenBar=new CToolBar;

if(!m_wndFullScreenBar->Create(this, CBRS_SIZE_DYNAMIC|CBRS_FLOATING)
|| !m_wndFullScreenBar->LoadToolBar(IDR_FULLSCREEN))
{
TRACE0("Failed to create toolbar\n");
return; // fail to create
}

//不允许工具条停泊
m_wndFullScreenBar->EnableDocking(FALSE);
m_wndFullScreenBar->SetWindowPos(0,100,100,0,0,SWP_NOSIZE
|SWP_NOZORDER|SWP_NOACTIVATE|SWP_SHOWWINDOW);
m_wndFullScreenBar->SetWindowText(_T("全屏幕显示"));
FloatControlBar(m_wndFullScreenBar, CPoint(100,100));
m_bFullScreen=TRUE;
}
else
{//正常显示模式
//删除全屏幕工具条
m_wndFullScreenBar->DestroyWindow();
delete m_wndFullScreenBar;

m_bFullScreen=FALSE;

//恢复工具条和状态条
m_wndStatusBar.ShowWindow(SW_SHOWNORMAL);
m_wndToolBar.ShowWindow(SW_SHOWNORMAL);
wpNew = m_wpPrev;
}

//设置窗口显示状态
SetWindowPlacement ( &wpNew );
}

void CMainFrame::OnGetMinMaxInfo(MINMAXINFO FAR* lpMMI)
{
if (m_bFullScreen)
{
lpMMI->ptMaxSize.y = m_FullScreenWindowRect.Height();
lpMMI->ptMaxTrackSize.y = lpMMI->ptMaxSize.y;
lpMMI->ptMaxSize.x = m_FullScreenWindowRect.Width();
lpMMI->ptMaxTrackSize.x = lpMMI->ptMaxSize.x;
}
}

void CMainFrame::OnUpdateMenuFullscreen(CCmdUI* pCmdUI)
{//更新菜单的状态
pCmdUI->Enable();
pCmdUI->SetCheck(m_bFullScreen);
}

卢卡吊粒吊牌 关于如何搞基于ARM的视频播放器 不显示删除回复显示所有回复显示星级回复显示得分回复 jxl 数据库中几十万条数据写入Excel 内存溢出 如何查看Android模拟器的System分区空间 统计一下大家都是什么学历,以及是什么技能, txt文档按照规则导入access或者excel 数组排序的一个小程序 cxLookupComboBox不能多列查询和汉字匹配吗? CodeBlocks和QtCreator共有的问题,帮解决下 如何破解exe后缀的pdf文件? 在WinForm下,大家有没有做过仿Photoshop的浮动工具箱 诚心求购“售楼管理系统”源代码 求高手解答真的不知道为什么错了 请问如何获得窗口以及控件的句柄 [已答复]Disallowed Key Characters. IOCP,UDP 跳槽待遇的问题 安装受挫: SQL Server 2008 Express With Tools C#做的文件管理系统如何关联系统图标? 【看看,不知不觉,又是新的一天了~】随便写写,见者有分。。。 《C语言深度剖析》--定义为数组,声明为指针 VS2008提交表单到php网页 C++中 *p++ 和p++有什么区别 EXCEL数据导入GridView的问题,附代码,帮忙看看 背景自适应自动变换背景效果遇到难题。请教一下!!急!! asp网站建设 xilinx高手请进!!! 未能加载文件或程序集“CrystalDecisions.Web, Version=10.5.3700.0, Culture=neutral, PublicKe 有六年java工作经验能拿到多少薪水 设计程序,输入一组人员姓名及出生年份,保存到如下形式的链表中。