如图。我想每次接收WM_MOUSEMOVE消息时 就把他跟换成点击消息,这个要怎么处理呢?我自己在OnMouseMove试了试加了个OnLbuttonDown  ,或者PreTransplateMSG但是这样都并没什么反应。。我现在想做的效果是 鼠标移到一个按钮上时 就触发那个按钮按下时的消息代码。

解决方案 »

  1.   

    但你得在OnLbuttonDown 函数里加上自己的代码才知道是不是能响应
      

  2.   

    可以啊,你要先获取一下鼠标坐标,看它现在是不是在按钮的位置(按钮的位置你肯定知道的),如果是,执行OnLbuttonDown(),如果不是就不执行。
      

  3.   

    在WM_MOUSEMOVE消息中获取鼠标的位置GetCursor,然后判断鼠标是否移动到按钮中,获取按钮的矩形区域GetWindowRect,得到一个“RECT”,然后判断鼠标的指针PtInRect。
    如果在该区域内,PostMessage发送WM_LBUTTONDOWN或BN_CLICKED消息。
      

  4.   

    在PreTranslateMsg里判断鼠标是否移动到按钮上
    如果是直接调用按钮的响应函数