我从CButton类继承了一个自己的按钮类,我想接收的鼠标消息应该为down,up,down,up的,但是如果我在MouseDown的时候如果弹出个对话框,则此时将连着收到两个down消息,中间没有up消息.真是奇怪,即使我用鼠标Capture也是这样,不知道这种情况下是否中间还有一个什么消息来指示我已经丢失了一个up消息了?希望大家一起讨论!!!

解决方案 »

  1.   

    消息被阻塞了,用outdebugstring看看
      

  2.   

    我想连着两个down,这是无法改变的了,我想知道两个down之间是否有其他的消息代替一下那个up,让我可以做些清除工作
      

  3.   

    用AfxMessageBox就可以重现这个问题了
      

  4.   

    AfxMessageBox就正常了?就是你要的down,up,down,up了?
      

  5.   

    to iyranly:
      你在ButtonDown弹出的AfxMessageBox吗,我说的是在ButtonDown弹出的AfxMessageBox,才会导致两个Down的问题
      

  6.   

    AfxMessageBox把操作转移到对话框上了
      

  7.   

    to scq2099yt:
      操作转到对话框上,这种情况我按钮自己是否知道,也就是说有没有消息发给按钮???
      

  8.   

    当弹出模式对话框时,父窗口将被Disable。
      

  9.   

    SPY了一下,发现两个DOWN之间有很多WM_GETDLGCODE消息,唉WM_GETDLGCODE是干啥的,又不懂了