null

解决方案 »

  1.   

    是不是暴闪?就知道会这样,准备一个后台DC,和屏幕等大,当然,必要的CBitmap也要创建出来,然后SelectObject进去,所有绘图工作在这个DC上完成,然后,每隔55毫秒,向屏幕DC上BitBlt一次就OK了
      

  2.   

    屏幕位图可以直接通过STRETCHBLT 或BITBLT写入一个与DIB文件相关联的HDCMEN从而保存下来
    那个画圆能不能用矩形来控制位置,然后不断调用OFFSETRECT(),重画时只重画矩形区域?不过不知道你要画的圆多大
      

  3.   

    我的思路是用SetTimer向窗口过程发送一个WM_TIMER消息,窗口过程接收到以后调用InvalidateRect,然后重绘圆,圆的圆心位置用一个全局变量自加来确定。
      

  4.   

    关注!
    同意jameslee005(JamesLee) 。
    =================
    楼主写出来了吗?
      

  5.   

    InvalidRect 画的当然闪了,你应该用 XOR 方式重画一次然后再画新的
      

  6.   

    不过通常用内存来擦除,并重绘是解决屏幕闪烁的简单方法,XOR好象有颜色的问题,不过效果肯定是最好的
      

  7.   

    老兄,怎么还用GDI,那效率太低了
    改用DirectX吧,直接操作显存
    如果你的显卡支持
    可用OverLay,绝对达到游戏级的动画效果
      

  8.   

    那请各位贴上示范代码,好吗?
    我希望能看到用win32 api写的