全屏和退出全屏

1.添加变量

  WINDOWPLACEMENT m_OldWndPlacement; //用来保存原窗口位置 
 BOOL m_bFullScreen;         //全屏显示标志 
 CRect m_FullScreenRect; //表示全屏显示时的窗口位置 

2.全屏

	GetWindowPlacement(&m_OldWndPlacement); 
    CRect WindowRect;
	GetWindowRect(&WindowRect); 
    CRect ClientRect;              
    RepositionBars(0, 0xffff, AFX_IDW_PANE_FIRST, reposQuery, &ClientRect); ClientToScreen(&ClientRect);
	 // 获取屏幕的分辨率 
	 int nFullWidth=GetSystemMetrics(SM_CXSCREEN); 
	 int nFullHeight=GetSystemMetrics(SM_CYSCREEN); 
	 // 将除控制条外的客户区全屏显示到从(0,0)到(nFullWidth, nFullHeight)区域, 将(0,0)和(nFullWidth, nFullHeight)两个点外扩充原窗口和除控制条之外的 客户区位置间的差值, 就得到全屏显示的窗口位置 
	 m_FullScreenRect.left=WindowRect.left-ClientRect.left; 
	 m_FullScreenRect.top=WindowRect.top-ClientRect.top; 
	 m_FullScreenRect.right=WindowRect.right-ClientRect.right+nFullWidth;
	 m_FullScreenRect.bottom=WindowRect.bottom-ClientRect.bottom+nFullHeight; 
	 m_bFullScreen=TRUE; // 设置全屏显示标志为 TRUE 
	 // 进入全屏显示状态 
	 WINDOWPLACEMENT wndpl; 
	 wndpl.length=sizeof(WINDOWPLACEMENT); 
	 wndpl.flags=0; 
	 wndpl.showCmd=SW_SHOWNORMAL; 
	 wndpl.rcNormalPosition=m_FullScreenRect; 
	 SetWindowPlacement(&wndpl);

3.退出全屏

	    if(m_bFullScreen) 
	{
	    // 退出全屏显示, 恢复原窗口显示 
        ShowWindow(SW_HIDE); 
        SetWindowPlacement(&m_OldWndPlacement);
	}


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值