请教一个MFC重载的问题

MFC消息控制流最具特色的地方是CWnd类的虚拟函数PreTranslateMessage(),通过重载这个函数,我们可以改变MFC的消息控制流程,甚至可以作一个全新的控制流程出来。

请问下这句话中的,通过重载这个函数,是什么意思呀?甚至可以作一个全新的控制流程出来。意思是重写这个函数吗?我知道重载函数是啥意思,但是这里不是很明白,还请指教一下,先谢谢了。

4个回答

不是重载,而是重写PreTranslateMessage()
这是一个虚函数,你的窗口从CWnd派生,你可以写一个PreTranslateMessage()函数,然后它会替换掉基类的实现,从而你可以把你的消息处理放在里面。

caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复qq_29670983: 如果我的回答帮助了您,烦劳您点下我回答右边的采纳,谢谢
4 年多之前 回复
qq_29670983
qq_29670983 谢谢您的回答
4 年多之前 回复

重载了这个函数后。MFC框架就会调用你的实现。从而把这个消息处理逻辑交给你自己控制。

qq_29670983
qq_29670983 谢谢您的回答
4 年多之前 回复

系统函数不是重载,你可以重写这个函数,然后把自己想改变的事件处理方式自己实现,系统会屏蔽掉原有的处理,亦或是自己的事件处理完毕再处理系统原有的动作

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!