2

我正在尝试将双精度/浮点值从我的 MFC 旧代码发送到 WPF 窗口。WPF WndProc 过程以整数形式接收 LParam 和 WParam 中的参数(截断十进制值)。

private IntPtr WndProc(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled)

我怎样才能做到这一点?

提前致谢

4

1 回答 1

1

您可以创建一个结构来存储您的浮点/双精度值,并在 lParam 值中传递该结构的地址。如果您要发布消息而不是发送消息,则需要让收件人释放结构占用的内存。

#define MYMESSAGECODE (WM_APP + 123 )
typedef struct
{
    float f;
    double d;
} MyDataStruct;

MyDataStruct data;
data.f = 1.0;
data.d = 2.0;
pWpfWnd->SendMessage( MYMESSAGECODE, 0, (LPARAM) &data );
于 2014-02-24T11:31:14.737 回答