回退键在smartphone上是起到三种作用:
1、对于窗口,除了对话框(From)和MessageBox提示框, 按下后退键,系统将返回
到前一个界面(窗口),当前窗口并不关闭,由前一个窗口在最上方显示(按 z 顺序导航 )
2、对于有edit空间的对话框,后退键在edit中起到BACKSPACE一样的作用,删除字符.
当我门作back key的重载处理的时候,我们需要执行SHSendBackToFocusWindow,
对有焦点的控件进行处理操作.
3、对于没有edit控件的对话框,或者对于MessageBox提示框,按下后退键,将会向窗口发送WM_COMMAND/IDCANCEL 消息,对话框收到后,系统调用默认的退出响应。
对于有Edit control的对话框
case WM_HOTKEY:
{
if(VK_TBACK == HIWORD(lParam))
SHSendBackToFocusWindow(message, wParam, lParam);
}
对于没有edit control的对话框
case WM_COMMAND:
{
switch(LOWORD(wParam))
{
case IDCANCEL:
{
EndDialog(hwnd, TRUE);
return TRUE;
}
}
break;
}
以上详细情况可以看看sdk 里面的samples/win32/Closewindow 例子和Back例子