WEB开发网
开发学院手机开发Windows Mobile 开发 PocketPC下 创建全屏幕应用程序 阅读

PocketPC下 创建全屏幕应用程序

 2010-08-22 12:34:00 来源:WEB开发网   
核心提示:rc.right,rc.bottom-(2*MENU_HEIGHT),TRUE);一个 Win 32 应用程序对话框 SHInitDialog 函数中使用该处理程序 WM_INITDIALOG , SHInitDialog 与 SHFullScreen 函数结合使用隐藏用户界面元素来实现一个的全屏对话框:case WM

rc.right,

rc.bottom-(2*MENU_HEIGHT),

TRUE);

一个 Win 32 应用程序对话框 SHInitDialog 函数中使用该处理程序 WM_INITDIALOG 。 SHInitDialog 与 SHFullScreen 函数结合使用隐藏用户界面元素来实现一个的全屏对话框:

case WM_INITDIALOG:

#define MENU_HEIGHT 26

SHINITDLGINFO shidi;

RECT rc;

shidi.hDlg = hDlg;

shidi.dwMask = SHIDIM_FLAGS;

shidi.dwFlags = SHIDIF_FULLSCREENNOMENUBAR;

SHInitDialog(&shidi);

GetWindowRect(hDlg, &rc);

MoveWindow(hDlg,

rc.left,

rc.top-MENU_HEIGHT,

rc.right,

rc.bottom,

TRUE);

SetForegroundWindow(hDlg);

SHFullScreen(hDlg, SHFS_HIDETASKBAR | SHFS_HIDESIPBUTTON);

以下介绍如何执行相似任务,从 MFC 应用程序中的。 有用于 Windows CE,基于对话框的 MFC 应用程序和 SDI 或文档 / 视图支持应用程序的两个主要类型。 要完成 SHAPI Win 32 示例演示的了,您必须访问 MFC 类数据的成员。

下面说明了文档 / 视图类型应用程序的过程。 此代码是在全屏幕模式下将使应用程序的一个命令处理:

void CMainFrame::OnFullscreen()

{

#define MENU_HEIGHT 26

RECT rc;

//get window size

GetWindowRect(&rc);

::SHFullScreen(m_hWnd, SHFS_HIDETASKBAR | SHFS_HIDESIPBUTTON);

::ShowWindow(this->m_hCommandBar, SW_HIDE);

MoveWindow(rc.left,

rc.top-MENU_HEIGHT,

rc.right,

rc.bottom+MENU_HEIGHT,

TRUE);

}

如果一个对话框以覆盖整个屏幕显示,类似的代码位于 OnInitDialog 处理程序中。 一个差异是 MFC 框架的 PocketPC 在必须隐藏的 CDialog 中创建一个空的命令栏:

BOOL CMfctest2Dlg::OnInitDialog()

{

m_bFullScreen = FALSE;

CDialog::OnInitDialog();

// Call SHInitDialog with flags for full screen.

SHINITDLGINFO shidi;

Tags:PocketPC 创建 屏幕

编辑录入:coldstar [复制链接] [打 印]
赞助商链接