Windows 如何将函数回调传递给已创建的窗口?(窗口)
我有一个函数回调来处理窗口的事件,比如WM_SIZE。现在,如何将函数回调传递给打开的窗口?(用于命令行应用程序)Windows 如何将函数回调传递给已创建的窗口?(窗口),windows,callback,Windows,Callback,我有一个函数回调来处理窗口的事件,比如WM_SIZE。现在,如何将函数回调传递给打开的窗口?(用于命令行应用程序) 我见过RegisterClassEx,但我认为它用于创建新窗口。如果要处理现有窗口的windows消息,您有两个选项: 子类化。每个窗口都有一个“window proc”回调函数(您指的是该函数),您可以使用SetWindowLongPtr将其替换为GWLP\u WNDPROC。然后,在您自己的windowproc中,您需要将消息转发到您替换的原始消息。但也有一些限制: 无法安全地
我见过RegisterClassEx,但我认为它用于创建新窗口。如果要处理现有窗口的windows消息,您有两个选项: 子类化。每个窗口都有一个“window proc”回调函数(您指的是该函数),您可以使用
SetWindowLongPtr
将其替换为GWLP\u WNDPROC
。然后,在您自己的windowproc中,您需要将消息转发到您替换的原始消息。但也有一些限制:
Windows挂钩,使用
SetWindowsHookEx
。如果您想查看其他窗口的消息,请使用此选项-您可以在给定线程或系统范围内查看所有窗口消息。有不同类型的钩子允许您捕获不同类型的消息。这是一个相当沉重的方法;这是最后的办法,这样你就不会不必要地使系统陷入困境。你的问题不清楚。你想做什么?我想知道窗口什么时候改变了大小,所以我创建了回调函数来处理它。现在,我需要将它传递到程序运行的窗口。