本文整理汇总了C++中CDialog::IsKindOf方法的典型用法代码示例。如果您正苦于以下问题:C++ CDialog::IsKindOf方法的具体用法?C++ CDialog::IsKindOf怎么用?C++ CDialog::IsKindOf使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CDialog
的用法示例。
在下文中一共展示了CDialog::IsKindOf方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
UINT CALLBACK
_AfxCommDlgProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
if (hWnd == NULL)
return 0;
_AFX_THREAD_STATE* pThreadState = _afxThreadState.GetData();
if (pThreadState->m_pAlternateWndInit != NULL)
{
ASSERT_KINDOF(CFileDialog,pThreadState->m_pAlternateWndInit);
pThreadState->m_pAlternateWndInit->SubclassWindow(hWnd);
pThreadState->m_pAlternateWndInit = NULL;
}
ASSERT(pThreadState->m_pAlternateWndInit == NULL);
if (message == WM_INITDIALOG)
{
_afxMsgLBSELCHANGE = ::RegisterWindowMessage(LBSELCHSTRING);
_afxMsgSHAREVI = ::RegisterWindowMessage(SHAREVISTRING);
_afxMsgFILEOK = ::RegisterWindowMessage(FILEOKSTRING);
_afxMsgCOLOROK = ::RegisterWindowMessage(COLOROKSTRING);
_afxMsgHELP = ::RegisterWindowMessage(HELPMSGSTRING);
_afxMsgSETRGB = ::RegisterWindowMessage(SETRGBSTRING);
return (UINT)AfxDlgProc(hWnd, message, wParam, lParam);
}
if (message == _afxMsgHELP ||
(message == WM_COMMAND && LOWORD(wParam) == pshHelp))
{
// just translate the message into the AFX standard help command.
SendMessage(hWnd, WM_COMMAND, ID_HELP, 0);
return 1;
}
if (message < 0xC000)
{
// not a ::RegisterWindowMessage message
return 0;
}
// assume it is already wired up to a permanent one
CDialog* pDlg = (CDialog*)CWnd::FromHandlePermanent(hWnd);
ASSERT(pDlg != NULL);
ASSERT_KINDOF(CDialog, pDlg);
if (pDlg->IsKindOf(RUNTIME_CLASS(CFileDialog)))
{
// If we're exploring then we are not interested in the Registered messages
if (((CFileDialog*)pDlg)->m_ofn.Flags & OFN_EXPLORER)
return 0;
}
// RegisterWindowMessage - does not copy to lastState buffer, so
// CWnd::GetCurrentMessage and CWnd::Default will NOT work
// while in these handlers
// Dispatch special commdlg messages through our virtual callbacks
if (message == _afxMsgSHAREVI)
{
ASSERT_KINDOF(CFileDialog, pDlg);
return ((CFileDialog*)pDlg)->OnShareViolation((LPCTSTR)lParam);
}
else if (message == _afxMsgFILEOK)
{
ASSERT_KINDOF(CFileDialog, pDlg);
if (afxData.bWin4)
((CFileDialog*)pDlg)->m_pofnTemp = (OPENFILENAME*)lParam;
BOOL bResult = ((CFileDialog*)pDlg)->OnFileNameOK();
((CFileDialog*)pDlg)->m_pofnTemp = NULL;
return bResult;
}
else if (message == _afxMsgLBSELCHANGE)
{
ASSERT_KINDOF(CFileDialog, pDlg);
((CFileDialog*)pDlg)->OnLBSelChangedNotify(wParam, LOWORD(lParam),
HIWORD(lParam));
return 0;
}
else if (message == _afxMsgCOLOROK)
{
ASSERT_KINDOF(CColorDialog, pDlg);
return ((CColorDialog*)pDlg)->OnColorOK();
}
else if (message == _afxMsgSETRGB)
{
// nothing to do here, since this is a SendMessage
return 0;
}
return 0;
}
示例2: if
UINT CALLBACK
_AfxCommDlgProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
if (hWnd == NULL)
return 0;
if (message == WM_SETFONT || message == WM_INITDIALOG)
return (UINT)AfxDlgProc(hWnd, message, wParam, lParam);
if (message == nMsgHELP ||
(message == WM_COMMAND && LOWORD(wParam) == pshHelp))
{
// just translate the message into the AFX standard help command.
SendMessage(hWnd, WM_COMMAND, ID_HELP, 0);
return 1;
}
if (message < 0xC000)
{
// not a ::RegisterWindowMessage message
return 0;
}
// RegisterWindowMessage - does not copy to lastState buffer, so
// CWnd::GetCurrentMessage and CWnd::Default will NOT work
// while in these handlers
// Get our Window
// assume it is already wired up to a permanent one
CDialog* pDlg = (CDialog*)CWnd::FromHandlePermanent(hWnd);
if (pDlg == NULL && (::GetWindowLong(hWnd, GWL_STYLE) & WS_CHILD))
pDlg = (CDialog*)CWnd::FromHandlePermanent(::GetParent(hWnd));
ASSERT(pDlg != NULL);
ASSERT(pDlg->IsKindOf(RUNTIME_CLASS(CDialog)));
// Dispatch special commdlg messages through our virtual callbacks
if (message == nMsgSHAREVI)
{
ASSERT(pDlg->IsKindOf(RUNTIME_CLASS(CFileDialog)));
return ((CFileDialog*)pDlg)->OnShareViolation((LPCTSTR)lParam);
}
else if (message == nMsgFILEOK)
{
ASSERT(pDlg->IsKindOf(RUNTIME_CLASS(CFileDialog)));
return ((CFileDialog*)pDlg)->OnFileNameOK();
}
else if (message == nMsgLBSELCHANGE)
{
ASSERT(pDlg->IsKindOf(RUNTIME_CLASS(CFileDialog)));
((CFileDialog*)pDlg)->OnLBSelChangedNotify(wParam, LOWORD(lParam),
HIWORD(lParam));
return 0;
}
else if (message == nMsgCOLOROK)
{
ASSERT(pDlg->IsKindOf(RUNTIME_CLASS(CColorDialog)));
return ((CColorDialog*)pDlg)->OnColorOK();
}
else if (message == _afxNMsgSETRGB)
{
// nothing to do here, since this is a SendMessage
return 0;
}
return 0;
}