如何让WndProc调用非静态类成员

baidu_30556971 2015-08-18 02:22:48
一个WndProc函数,在我用CreateWindowEx的时候我把this传入了lParam,初始化没什么问题,但是WM_SIZE的事件的传值也是用lParam的....那么我就无法调用了

LRESULT CALLBACK winglt::WndProc(HWND _hWnd, UINT _Msg, WPARAM _wParam, LPARAM _lParam) {
MYCLASS *pClass = (MYCLASS*)_lParam;
}

这样子在一般情况下是可以的,但是一旦触发了WM_SIZE事件,WM_SIZE的传值也用的是lParam....冲突了
求解
...全文
116 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
schlafenhamster 2015-08-18
  • 打赏
  • 举报
回复
SetProp The SetProp function adds a new entry or changes an existing entry in the property list of the specified window. The function adds a new entry to the list if the specified character string does not exist already in the list. The new entry contains the string and the handle. Otherwise, the function replaces the string's current handle with the specified handle. BOOL SetProp( HWND hWnd, // handle of window LPCTSTR lpString, // atom or address of string HANDLE hData // handle of data ); // GetProp The GetProp function retrieves a data handle from the property list of the given window. The given character string identifies the handle to be retrieved. The string and handle must have been added to the property list by a previous call to the SetProp function. HANDLE GetProp( HWND hWnd, // handle of window LPCTSTR lpString // atom or address of string );
worldy 2015-08-18
  • 打赏
  • 举报
回复
CreateWindowEx的时候我把this传入了lParam,传入的参数,在窗口过程函数中,必须处理WM_CREATE消息,将传入的参数通过SetWindowLong或者SetWindowProp将传入的参数到一个窗口属性中,窗口过程的其它消息处理,再从保存的窗口参数中恢复
sumos 2015-08-18
  • 打赏
  • 举报
回复
推荐使用WTL,wtl就是对win32的封装,比如怎么把全局WndProc转换成执行成员函数。 只需要包含wtl的几个.h文件就可以了。
Magic丶旭 2015-08-18
  • 打赏
  • 举报
回复
天呐,你不会switch(uMsg)判断一下是什么消息吗?
通过本课程学习您可以学习到Dart语言如下知识:第1章 Dart语言概述:Dart语言简介、Dart语言支持平台开发、Flutter为什么选择Dart语言。第2章 开发环境搭建:下载Dart SDK、Windows下安装Dart SDK、macOS下安装Dart SDK、Visual Studio Code开发工具、IntelliJ IDEA开发工具。第3章 完成个Dart程序:动动手写一个HelloWorld、Dart源代码文件组织结构、Visual Studio Code调试Dart代码、IntelliJ IDEA调试Dart代码。第4章 Dart语法基础:标识符、关键字、变量、常量、注释、库。第5章 Dart数据类型:数值类型、字符串、数据类型相互转换、布尔类型和枚举类型第6章 运算符:算术运算符、算术赋值运算符、关系运算符、逻辑运算符、位运算符、条件运算符、类型检查运算符。第7章 控制语句:分支语句、循环语句、跳转语句。第8章 函数:函数声明、可选参数、头等函数(first-class function)、匿名函数。第9章 类:类声明、getter和setter访问器、构造函数、静态变量和静态方法、级联符号。第10章 继承与多态:Dart中的继承实现、调用父类构造函数、成员变量的覆盖(Override)、方法的覆盖(Override)、多态、混入(Mixins)。第11章 抽象类与接口:抽象类、接口、Dart中隐式接口、实现接口。第12章 数据容器:List容器、Set容器、Map容器、泛型。第13章 异常处理:捕获异常、try-on捕获异常、try-catch捕获异常、try-on-catch捕获异常、使用finally代码块、手动抛出异常、自定义异常类。第14章 异步编程:Dart异步处理机制、案例:同步函数实现读取文件、案例:异步函数实现读取文件、Future对象。  

16,372

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧