本文整理汇总了C++中CDialog::DlgProc方法的典型用法代码示例。如果您正苦于以下问题:C++ CDialog::DlgProc方法的具体用法?C++ CDialog::DlgProc怎么用?C++ CDialog::DlgProc使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CDialog
的用法示例。
在下文中一共展示了CDialog::DlgProc方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: StaticDlgProc
BOOL CALLBACK CDialog::StaticDlgProc(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam)
{
//указатель на объект-диалог
CDialog* pDialog;
//если это сообщение-инициализация
if(Msg==WM_INITDIALOG)
{
//запомнить объект
pDialog=(CDialog*)lParam;
SetWindowLong(hWnd,GWL_USERDATA,(LONG)lParam);
//запомнить окно диалога
pDialog->mhWindow=hWnd;
}
else
//получить объект
pDialog=(CDialog*)GetWindowLong(hWnd,GWL_USERDATA);
//обработка некоторых сообщений
switch(Msg)
{
case WM_INITDIALOG:
//сделать диалог полупрозрачным
SetWindowLong(hWnd,GWL_EXSTYLE,GetWindowLong(hWnd,GWL_EXSTYLE) /*| WS_EX_TOOLWINDOW */| WS_EX_LAYERED);
SetLayeredWindowAttributes(hWnd,0,255*90/100,LWA_ALPHA);
//удалить команду закрытия окна
// RemoveMenu(GetSystemMenu(hWnd,FALSE),SC_CLOSE,MF_BYCOMMAND);
break;
case WM_CTLCOLORDLG:
case WM_CTLCOLORSTATIC:
case WM_CTLCOLORBTN:
// case WM_CTLCOLOREDIT:
// case WM_CTLCOLORLISTBOX:
case WM_CTLCOLORSCROLLBAR:
SetBkColor((HDC)wParam,gApplication.mBrushSelectColor);
return (BOOL)gApplication.mhBrushSelect;
}
//передать диалогу сообщение
return pDialog ? pDialog->DlgProc(Msg,wParam,lParam) : FALSE;
}