Visual c++ 在MFC中生成事件

Visual c++ 在MFC中生成事件,visual-c++,mfc,Visual C++,Mfc,我们如何生成事件,以便框架在我需要的实例中调用MFC中的消息处理程序OnSize()函数 谢谢使用或函数并发送消息使用或函数并发送消息您可以使用SendMessage函数,如下所示: SetWindowPos (NULL, 0,0, myrect. Height (), myrect. Width (), SWP_FRAMECHANGED|SWP_NOZORDER); 您可以使用SendMessage函数,如下所示: SetWindowPos (NULL, 0,0, myrect. Heigh

我们如何生成事件,以便框架在我需要的实例中调用MFC中的消息处理程序OnSize()函数


谢谢

使用或函数并发送消息

使用或函数并发送消息

您可以使用SendMessage函数,如下所示:

SetWindowPos (NULL, 0,0, myrect. Height (), myrect. Width (), SWP_FRAMECHANGED|SWP_NOZORDER);

您可以使用SendMessage函数,如下所示:

SetWindowPos (NULL, 0,0, myrect. Height (), myrect. Width (), SWP_FRAMECHANGED|SWP_NOZORDER);

我经常重复这句话:Windows不是事件驱动系统;因此,您不会生成事件。Windows中的事件是用于同步线程的实体

每个窗口都通过处理来自系统或应用程序的消息并相应地执行操作来工作。它们可以是预定义的消息,也可以是专门为应用程序定义的消息

我尊重但强烈反对以前的帖子。尽管信息是出于好意提供的,但它显示了一种糟糕的编程实践

您不应使用发送/发送邮件更改窗口大小。使用windows API: 移动窗口或设置窗口位置。这将向窗口发送WM_大小(以及其他伴随消息),以通知大小更改请求

一般而言:


切勿发送或发布由系统生成的消息,因为这在大多数情况下不起作用,因为系统通常会生成您不发送的其他消息,从而导致意外行为。

我经常重复这句话:Windows不是事件驱动系统;因此,您不会生成事件。Windows中的事件是用于同步线程的实体

每个窗口都通过处理来自系统或应用程序的消息并相应地执行操作来工作。它们可以是预定义的消息,也可以是专门为应用程序定义的消息

我尊重但强烈反对以前的帖子。尽管信息是出于好意提供的,但它显示了一种糟糕的编程实践

您不应使用发送/发送邮件更改窗口大小。使用windows API: 移动窗口或设置窗口位置。这将向窗口发送WM_大小(以及其他伴随消息),以通知大小更改请求

一般而言:


切勿发送或发布由系统生成的消息,因为这在大多数情况下不起作用,因为系统通常会生成您不发送的附加消息,从而导致意外行为。

更一般地说,在MFC中合成事件的方法是使用
SendInput
函数:


更一般地说,在MFC中合成事件的方法是使用
SendInput
函数: