如果我的程序有个主窗口及其消息出理的回调函数
又自建了一个modeless dialog及其消息出理回调回调函数
那谁来分配具体哪个回调函数响应哪个消息呢?它们之间如何协调?
是不是这么简单:在主窗口设IsDialogMessage来确定是谁的消息?
那为什么我的程序仍会混淆呢?因为我发现有的窗口并没捕捉到它应该得到的消息?
请各位指教
又自建了一个modeless dialog及其消息出理回调回调函数
那谁来分配具体哪个回调函数响应哪个消息呢?它们之间如何协调?
是不是这么简单:在主窗口设IsDialogMessage来确定是谁的消息?
那为什么我的程序仍会混淆呢?因为我发现有的窗口并没捕捉到它应该得到的消息?
请各位指教
解决方案 »
- CreateFileMapping只读方式创建失败
- 请问VC6.0中宏的一个小问题?
- Microsoft 的64位C++编译器出来了么?
- sdk中怎么实现ctrl + d不最小化我的窗口?
- 如何实现HTTP上传文件,server 端用asp 或jsp或其他服务器脚本接收的那种.
- 我需要怎么提供一个事先不知道条数的录入界面?
- win2000下如何关机及重启?
- 请帮忙!关于CDatabase的问题!请帮忙!高分相赠!
- 怎样将INSTALLSHIELD制作的安装程序中的INSTALLSHIELD字样去掉?
- 急!!!!菜鸟喊救命
- 我有个问题就是我只想改变对话框中的static text中字体的大小,请各位帮一下
- 我在一个DIALOG上画图,如何可以使它不会重新刷新?
if (!IsWindow(hwndGoto) || !IsDialogMessage(hwndGoto, &msg)){
if (!TranslateAccelerator( hWnd, ghAccel, &msg )){
TranslateMessage( &msg ) ;
DispatchMessage( &msg ) ;
}
}
}
窗口消息:
LRESULT FAR PASCAL WndProc(HWND hWnd,UINT uMsg,WPARAM wParam, LPARAM lParam )
对话框消息:
BOOL CALLBACK DlgWndProc(HWND hDlg, UINT message,WPARAM wParam, LPARAM lParam)
不用协调,自动调用。
事实是:
那个消息是发给哪个窗口的,操作系统很清楚,
于是该窗口的处理函数会被系统调用,
这个过程是用户程序不能干涉的。主窗口想要操作子窗口也得通过发消息来完成。
Windows的基础就是消息发送:
SendMessage(HWND hWnd......)的第一个参数是目标窗口的句柄。