如何替换windows mobile系统的X键

来源:互联网 发布:广东华讯网络 编辑:程序博客网 时间:2024/05/18 03:31

首先了解一下Windows mobile系统中右上角的系统按键,有两种,即OK键和X键,点击OK键即退出应用程序,点击X键最小化应用程序,通常我们希望程序中使用OK键来关闭应用释放内存。

笔者在开发应用程序中就遇到使用MFC来开发Windows mobile单文档应用程序,系统默认生成X键,如何替换成OK键呢?Windows mobile shell API提供了这样一个函数:SHDoneButton

BOOL SHDoneButton(

  HWND hwndRequester,

  DWORD dwState

);

hwndRequester     窗口句柄

dwState                         状态,值如下:

SHDB_SHOW                     显示OK

SHDB_HIDE                        隐藏OK

SHDB_SHOWCANCEL     Cancel功能的x键,点击 时会生成M_COMMAND or IDCANCEL的消息。

 

如何替换系统的x键?初始化程序中添加

SHDoneButton(SHDB_SHOW)

WM_COMMAND消息响应函数中添加下面的代码。

         if ( ( IDOK == LOWORD(wParam) ) || IDCANCEL == LOWORD( wParam ) )

         {

                   PostMessage(WM_CLOSE);

                   return TRUE;

         }