首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Win32包装器WndProc调用另一个类中的函数

问从Win32包装器WndProc调用另一个类中的函数
EN

Stack Overflow用户
提问于 2012-08-14 04:33:29
回答 1查看 547关注 0票数 0

我有一个带功能WndProc的win32包装器类(我使用一个静态wndproc将消息转发到WndProc成员函数)。

我还有另一个app类,它创建了我的win32包装类的一个实例。

我希望app类的用户能够编写他们自己的表示事件的函数,比如OnMouseClick()或OnMouseMove(),但是为了使其工作,我需要从win32包装器类的Wndproc (它不知道app类)中调用事件函数。

做这件事最好的方法是什么?我是否应该将指向每个事件函数的指针发送到我的win32包装类,并通过指针调用它?还是有更好的方法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-14 04:42:50

你的类的结构和它们的目的不是很清楚。尽管如此,包装器类的典型推荐结构如下:

代码语言:javascript
复制
class BaseClass
{
public:
    virtual void OnMouseClick(...) { }   // Empty body
    virtual void OnMouseMove(...) { }   // Empty body
};

class AppClass : public BaseClass
{
public:
    void OnMouseClick(...) { AppCode }
    void OnMouseMove(...) { AppCode }
};

基类在其静态WndProc处理程序中接收到Windows事件时调用虚方法。这会触发应用程序代码的执行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11941858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档