CWnd::IsDialogMessage

BOOL IsDialogMessage( LPMSG lpMsg );

返回值:
指明这个函数是否已处理了给定的消息。如果消息已被处理,则返回非零值;否则返回0。如果返回值为0,则调用基类的CWnd::PreTranslateMessage成员函数以处理这个消息。在CWnd::PreTranslateMessage成员函数的重载版本中的代码如下:
BOOL CMyDlg::PreTranslateMessage( msg )
{
    if( IsDialogMessage( msg ) ) return TRUE;
    else return CWnd::PreTranslateMessage( msg );
}

参数:
lpMsg指向一个MSG结构,其中包含了要被检查的消息。

说明:
调用这个函数以确定给定的消息是否是一个无模式对话框的。如果是,则函数处理这个消息。当IsDialogMessage函数处理消息的时候,它检查键盘消息并将它转换为对应对话框的选择命令。例如,TAB键选择下一个控件或控件组,下箭头键选择组中的下一个控件。
你不能将一个已被IsDialogMessage处理的消息发送给Windows函数::TranslateMessage或::DispatchMessage,因为它已经被处理了。

请参阅:
::DispatchMessage, ::TranslateMessage, ::GetMessage, CWnd::PreTranslateMessage, ::IsDialogMessage