我正在尝试将双精度/浮点值从我的 MFC 旧代码发送到 WPF 窗口。WPF WndProc 过程以整数形式接收 LParam 和 WParam 中的参数(截断十进制值)。
private IntPtr WndProc(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled)
我怎样才能做到这一点?
提前致谢
我正在尝试将双精度/浮点值从我的 MFC 旧代码发送到 WPF 窗口。WPF WndProc 过程以整数形式接收 LParam 和 WParam 中的参数(截断十进制值)。
private IntPtr WndProc(IntPtr hWnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled)
我怎样才能做到这一点?
提前致谢
您可以创建一个结构来存储您的浮点/双精度值,并在 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 );