回调函数

来源:互联网 发布:大番长数据修改器 编辑:程序博客网 时间:2024/05/19 04:28

 

//多谢黄师兄和王师兄,让我对回调函数有了很清晰的了解

 

SendMessage(WndProc,Msg,wParam,lParam)函数任何函数中都可以调用,WndPrco为指定窗口句柄,可以为当前
    也可以自己获得,Msg为消息类型,回调函数WndProc根据消息类型判断要进行何种动作,wParam,lParam为两
 个参数变量,只有这两个是用户自己定义的,用来在回调函数中定义对于不同消息的响应,如果有多个参数
 需要传递,可以考虑使用结构体指针,一般lParam会作为结构体指针,在使用结构体指针是要记得在回调函数
 中将其还原,并进行响应赋值。并且在调用SendMessage(WndProc,Msg,wParam,lParam)中将结构体指针强制
 转换为wParam类型。回调函数是可以由自身来调用的。

 

 

 

//补

 

今天上午看到师兄用另一种方法实现了相同的功能,觉得他的代码实现要比结构体指针更好。

 

采用字符串相加方式作为传入参数,然后在消息处理函数中分别读取各个字符串值,即此时分别获取需要的参数。WORD和HIWORD这两个函数分别获得前四个字节跟后四个字节的值,这样传递两个参数的时候就可以顺利传递。只是需要在消息处理函数中分别处理。

 

这样实现的代码更加美观,不过个人感觉语义不是太清晰

原创粉丝点击