WTL中的MessageFilter和IdleHandler

MessageFilter可以在处理消息之前,提前将消息修改一下。

其中CMessageFilter封装了MessageFilter

class CMessageFilter {
public:
	virtual BOOL PreTranslateMessage(MSG* pMsg) = 0;
};

 

CMainFrame之所以能响应PreTranslateMessage,是因为CMainFrame继承了CMessageFilter ,且在OnCreate中调用了AddMessageFilter。

CIdleHandler封装了IdleHandler,CMainFrame之所以能响应OnIdle,是因为CMainFrame继承了CIdleHandler,且在OnCreate中调用了AddIdleHandler。

posted @ 2009-07-27 11:24  Fan Zhang  阅读(541)  评论(0)    收藏  举报