如何将CPoint作为SendMessage的参数进行传递

(A)将CPoint作为SendMessage的参数进行传递有两种方法:

1 利用MAKELPARAM传递CPoint的值

   例如:SendMessage(hWnd,WM_MESS, NULL, MAKELPARAM(point.x, point.y));

   其中,hWnd是处理这条消息的函数,WM_MESS是你的消息

2 强制类型转换

SendMessage(hWnd,WM_MESS, NULL, LPARAM(&point));

(B)接收Point的信息

LRESULT CBitWnd::OnWmMess(WPARAM wParam,LPARAM lParam)
{
//接收的过程需要转换成指针,因为SendMessage的两个参数都是指针,前一个是宽指针
    CPoint *point=(CPoint*)lParam;
    int x = point->x;
    int y = point->y;

    CRect rect;
   GetParent()->GetClientRect(&rect);

    this->MoveWindow(x,rect.top,rect.Width(),rect.Height());
   return 0L;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值