我在对话框中用MoveWindow 函数移动一个按钮以实现动画效果,可是按钮在移动的过程中,有部分被遮掩,不能完全显示,请教如何解决这个问题

解决方案 »

  1.   

    能不能详细点,在哪个OnPaint中,如何重画?
      

  2.   

    不是的,你要用SetWindowPos,注意第一个参数和最后一个参数,第一个参数就是"层"的控制,最后参数千万不能有SWP_NOZORDER,就可以了,你试试就知道了.主要就是改变Z方向的顺序.
      

  3.   

    控件本身有tab顺序,tab在他前面的当然就盖住他了.
    把他设置为顶层.xx->SetWindowPos(CWnd::wndTopMost,0,0,0,0,SWP_NOMOVE);
      

  4.   

    问题解决了,原来在MoveWindow的过程中,没有重画消息,直至移动结束后才有,
    我一边MoveWindow ,一边RedrawWindow 就可以了。
    谢谢各位,结贴!