wince MFC窗口全屏

本文介绍如何在Wince环境下使用MFC实现程序窗口全屏,并提供了具体的代码实现细节,包括调整窗口位置和大小的方法及隐藏和恢复任务栏的操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

wince的MFC程序窗口全屏,在InitDialog函数里面加:

CRect m_FullScreenRect;   //全屏区域
	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);
	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;
	this->SetWindowPos(this->GetWindow(GW_OWNER), m_FullScreenRect.left,
		m_FullScreenRect.top, m_FullScreenRect.Width(),
		m_FullScreenRect.Height(), SWP_SHOWWINDOW);

	//hide the taskbar
	HWND hTask = ::FindWindow(TEXT("HHTaskBar"), NULL);
	if (hTask){
		::ShowWindow(hTask, SW_HIDE);
	}

另外,在程序退出前需要恢复任务栏的显示:

//show the taskbar
	HWND hTask = ::FindWindow(TEXT("HHTaskBar"), NULL);
	if (hTask){
		::ShowWindow(hTask, SW_SHOW);
	}

该操作我放在析构函数中。


win32的则需要对应的修改下。


上述代码在CE5.0上测试通过。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值