【发布时间】:2019-11-14 17:31:44
【问题描述】:
我的英语不好。对不起
HWND DIALOG_0 = CreateWindowEx(0, WC_DIALOG, "Security Alert", DS_SETFONT | WS_OVERLAPPEDWINDOW | WS_VISIBLE, 600,300,300,200,Win.hwnd_0,NULL,NULL,NULL);
(WNDPROC)SetWindowLongPtr(DIALOG_0 , GWLP_WNDPROC, (INT_PTR)dede);
ShowWindow (DIALOG_0, SW_SHOW);
UpdateWindow(DIALOG_0);
如何执行关闭事件。 如何制作 HWND 点击事件
我使用它,但它被锁定了。
(WNDPROC)SetWindowLongPtr(DIALOG_0 , GWLP_WNDPROC, (INT_PTR)dede);
WC_DIALOG 创建dede函数
LONG_PTR __stdcall Win32::dede(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_CTLCOLORDLG:
return (INT_PTR)GetStockObject(HOLLOW_BRUSH);
break;
default:
DefWindowProc(hDlg, message, wParam, lParam);
break;
}
return (INT_PTR)FALSE;
}
【问题讨论】:
-
显示
dede的代码。 -
好的,源代码追加完成。
-
这不是您子类化窗口的方式。您需要将未处理的消息转发到原始窗口的
CallWindowProc。另外,创建对话框的方法是CreateDialog,而不是CreateWindowEx。此外,这不是您使用DS_SETFONT的方式。重新开始:创建一个对话框模板,使用CreateDialog,并指定一个DlgProc。