我在一窗体那通过TIMER画一些动画,如走动的时钟,碰墙反弹的小球,
这是很简单,最初级的动画。
但我发现彩色屏幕光标会在画图时跟着闪烁,而标准光标(指针)却不会。
这是怎么会事?是我编程的问题,还是WINDOWS系统的BUG?
请高手指点。

解决方案 »

  1.   

    第一、你的机器太慢,Windows 处理你的动画光标就是有问题。
    再有就是程序的问题了。
      

  2.   


    非也,非也!
    程序很简单,也不可能有问题。
    光标闪烁在其他情况下不闪烁,只在有画图时闪。
    另,我的机器也不慢。
    光标闪烁肯定是由于先被HIDE,然后有SHOW,但这怎么引起的呢?
    光标处于绘图区域(窗体)之外。
      

  3.   

    因为你画图的方法效率太低,需要不停刷新屏幕,导致的光标闪烁,这可能也和彩色光标本身也需要刷新屏幕有关。最好采用效率更高的画图方式,比如用DC去做,或者用DirectX去做。
      

  4.   

    我觉得这不是效率问题,而且我用DC试过,不行。
    另外,我试过charles petzold书中附带的模拟时钟的例程,很简单的动画,但还是闪。
    我觉的这是win的bug.
      

  5.   

    你窗体很大吗?
    只让需要重画的地方invalidate
      

  6.   

    我今天看到了类似的现象,是QQ广告画图不善引起光标放在有效区域就会引起智能狂拼的悬浮窗口闪烁,我认为"可能"是因为使用GetDC不带参数引起的.
    希望对你有帮助.
      

  7.   

    不仅是QQ,我观察只要是动画,如IE里的GIF动画,都会引起《彩色》光标的闪烁。
    我觉得是WIN的BUG。
      

  8.   

    windows处理彩色光标就是这样,我以前也碰到过,不过作动画时现在都用directx画鼠标,效果不错
      

  9.   

    To: boby(feuer)
    “用directx画鼠标”这话怎么讲?