SendMessage消息参数的用法

开始的时候传消息参数是这样用的:

发送消息:

double dSize;

SendMessage( Hwnd, 自定义消息, 0, dSize );

接收消息函数:

void recieveMessage( WPARAM wParam, LPARAM lParam )

{

  double dSize = (double)lParam;

}

结果:在发送消息的时候,dSize的值是正确的,可是接收到消息后,dSize值就是0了。

 

后来经过看书才知道,消息参数必须要传地址,改成如下代码,结果就对了。

发送消息:

double dSize;

SendMessage( Hwnd, 自定义消息, 0, (LPARAM)&dSize );

接收消息函数:

void recieveMessage( WPARAM wParam, LPARAM lParam )

{

  double* dSize = (double*)lParam;

  这样用 *dSize取出的值是正确的。

}

 

 

你可能感兴趣的:(SendMessage消息参数的用法)