Windows 程序是以消息的传递为基础的程序,抓住消息这根主线,是学习Windows编程的基本方法之一,下面笔者以Tool Tip 控制为例,来说明如何根据消息这 根主线进行控制的深入学习。
分析如下两类核心的消息:
一.控制的*M消息
如ToolTip控制的TTM_ADDTOOL消息。
分析:*M消息是发给控制的命令消息,即命令控制去做某事。Api编程时可以使用SendMessage函数发此命令。在MFC中,此类消息被包装为成员函数。
二.控件的*N消息
如ToolTip控制的TTN_NEEDTEXT消息。
分析:*N消息是控制发给所属窗口的请求消息,即请求所属窗口为自己做某事。*N消息对应于Windows的消息映射(激发体+映射项+消息处理函数)。具体的例子可以参见本站站长的“CToolTipCtrl使用详细解说”一文。在进行控制编程,特别是使用MFC进行控制编程的时候,从控制的*M,*N消息入手来查阅资料,对理解控制的运作机理、MFC包装的实质大有好处。