C++和Win32 WC_DIALOG关闭事件问题
C++ and Win32 WC_DIALOG close event problem
我的英语不好。抱歉
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;
}
通常使用DialogBox
或CreateDialog
创建对话框,而不是使用CreateWindow
。如果使用CreateWindow
,则不能使用DS_样式。
GWLP_WNDPROC替换了原来的窗口过程,您通常应该调用CallWindowProc
,而不是DefWindowProc
。如果你不这样做,那么你就不会得到默认的IDCANCEL处理和对话框通常提供的所有其他东西。
捕获WM_CLOSE
和WM_COMMAND
以处理关闭和单击事件。
MSDN在这里有一个对话框指南。
相关文章:
- 警告处理为错误这里有什么问题
- C++Builder中的OnClick事件签名存在问题
- wxWidgets 拖放文件事件处理程序初始化问题(无效static_cast)
- C++和Win32 WC_DIALOG关闭事件问题
- 按键事件过滤器出现问题
- 指纹读取器 - 从 C# 代码创建事件处理程序到C++的问题
- 事件(开始,结束),1天的最大事件.C++ 中的性能问题
- SFML FPS访问窗口事件的问题
- 尝试实现 Windows API 包装器的事件处理程序时遇到问题
- 从Wt小部件信号事件运行popen()时出现问题
- Qt创建者关闭事件问题
- 使用C++11 lambda函数将点击事件连接到函数时出现问题
- C++ 事件处理 - 与常量有关的问题
- 在QT中捕捉"Tap and hold" QPushButton上的触摸事件时出现问题
- 我在C++中创建单击事件时遇到了一些问题
- win32 (c++)中的动画和事件问题
- 问题与QTableWidget右键单击事件
- 问题:让家长决定孩子是否接受事件
- VB.NET:未知的KeyDown事件问题
- 窗口事件回调函数C++的问题