ZKX's LAB

怎么向视图类CView发送自定义消息 类向窗口发送自定义消息

2021-03-09知识4

我在子窗口里面自定义了一个消息,然后PostMessage这个消息给父窗口,请问在父窗口中处理这个消息是在哪.

怎么向视图类CView发送自定义消息 类向窗口发送自定义消息

讨论:动态链接库如何给主程序发送自定义消息? 1.如果是自己zd的主程序和自己的DLL那么就很简单了 自己协调一下比如使用特定的标题或窗口类名使得FindWindow函数可以一次找到那个窗口然后就可以发消息了也可以在DLL中导出一个函数用于注册主程序版窗口句柄形如VOID_stdcall RegisterSelf(HWND hWindow);在DLL中使用一个变量保存住就可以了2.如果不是自己的主程序,是自己的DLL这样就权不容易协调了如果有很好的窗口特征仍然可以使用FindWindow函数搞定如果没有这些特征,可以使用枚举窗口的办法在DllMain中使用GetCurrentProcessId函数得到进程id枚举所有前台窗口,用GetWindowThreadProcessId函数得到进程ID对比两个ID,相同即表示找到了然后可以发送消息3.不是自己的主程序,也不是自己的DLL这样的情况貌似没有什么意义了但是可以使用DLL函数转发设计一个自己的DLL替换原来的DLL这样就又由你自己了

怎么向视图类CView发送自定义消息 如果你是在CView内部想它的view窗口发送消息的话,可以直接调用SendMessageLRESULT SendMessageUINT message,WPARAM wParam=0,LPARAM lParam=0如果你是在别的地方向CView发送消息,可能需要调用GetSafeHwnd获得窗口句柄了;自定义消息,可以直接定义消息ID,一般要求大于WM_USER,如define WM_MY_MSG1 WM_USER+11define WM_MY_MSG2

MFC tabctrl控件子窗口怎么向父窗口发自定义消息?用sendmessage()发了,可是父窗口中收不到,不响应 是你的窗口关系没搞清,tab控件的父窗口是CBucterSmartHomeSystemDlgCameraPage的父窗口是tab,所以你GetParent()->;w_hWnd是发送给tab了,CBucterSmartHomeSystemDlg自然收不到。要解决问题,可以GetParent()->;GetParent()->;w_hWnd。

#类向窗口发送自定义消息

随机阅读

qrcode
访问手机版