严格说,应该是操作系统生成的该消息。点击鼠标键,是鼠标设备产生了一个硬件中断,该中断被操作系统捕获,判断出是发生了鼠标左键点击事件。操作系统再取出当前鼠标的物理位置坐标,转化为逻辑坐标,这样它知道是点击了某个应用程序的窗体。然后向对应的应用程序发送一个鼠标点击事件。在MFC里面,控件已经对消息响应进行了封装,因此,当控件判断(鼠标消息的位置信息)是点击自己时(操作系统发送到应用程序的),控件产生一个被点击事件(实际是发送一条Click消息)。经过一系列处理后,你需要做的就是响应该消息,而不用管上述一系列过程了。