100分请问一个关于VC继承的基础有关问题
100分请教一个关于VC继承的基础问题
我有个基类CBaseDialog继承自 CDialog
重写了 OnInitDialog
还添加了OnLButtonDown和OnLButtonUp事件
然后我新建个对话框类CTab1Dialog,继承自CBaseDialog
在OnInitDialog的代码都可以执行,
如果我想要OnLButtonDown和OnLButtonUp事件的代码也继承下来,该怎么做啊
谢谢
------解决方案--------------------
有两种选择
1. 不要在新的CTab1Dialog中重写 OnLButtonDown和OnLButtonUp, 默认就能保有基类的两个方法。
2. 在CTab1Dialog中重写 OnLButtonDown和OnLButtonUp, 在两个函数的方法体内回调基类的这两个函数。
如下 void OnLButtonDown()
{
CBaseDialog::OnLButtonDown();
}
------解决方案--------------------
1楼正解。但要注意OnLButtonDown要是public或者protected
------解决方案--------------------
正解。
------解决方案--------------------
消息处理过程不存在继承一说,需要自己将要处理的消息加到消息路由表中。
------解决方案--------------------
继承的窗口要自己添加消息映射,基类的没法传给你
------解决方案--------------------
所言极是
------解决方案--------------------
我有个基类CBaseDialog继承自 CDialog
重写了 OnInitDialog
还添加了OnLButtonDown和OnLButtonUp事件
然后我新建个对话框类CTab1Dialog,继承自CBaseDialog
在OnInitDialog的代码都可以执行,
如果我想要OnLButtonDown和OnLButtonUp事件的代码也继承下来,该怎么做啊
谢谢
------解决方案--------------------
有两种选择
1. 不要在新的CTab1Dialog中重写 OnLButtonDown和OnLButtonUp, 默认就能保有基类的两个方法。
2. 在CTab1Dialog中重写 OnLButtonDown和OnLButtonUp, 在两个函数的方法体内回调基类的这两个函数。
如下 void OnLButtonDown()
{
CBaseDialog::OnLButtonDown();
}
------解决方案--------------------
1楼正解。但要注意OnLButtonDown要是public或者protected
------解决方案--------------------
正解。
------解决方案--------------------
消息处理过程不存在继承一说,需要自己将要处理的消息加到消息路由表中。
------解决方案--------------------
继承的窗口要自己添加消息映射,基类的没法传给你
------解决方案--------------------
消息处理过程不存在继承一说,需要自己将要处理的消息加到消息路由表中。
------解决方案--------------------
消息处理过程不存在继承一说,需要自己将要处理的消息加到消息路由表中。
也就是说,如果我想在继承窗口类中处理消息,就必须重新做消息映射处理,