在picture上画了一个背景图,想实现一种功能
当我鼠标在该背景图上移动,会出现一条跟随的
直线,注意,直线的移动不能影响到背景图
既是不会擦除掉背景图片哦

解决方案 »

  1.   

    物理屏幕上,肯定要改写背景图片。至于逻辑上,你可以以层的思想来实现。比如背景一个图层(MemDC),鼠标轨迹用另一图层(MemDC)然后把它们分别BitBlt到PaintDC上去。
      

  2.   

    这样做响应OnMouseMove画背景图片
    太频繁了,不可取
    我看了股票软件的界面确可以实现
    不知道是使用了什么方面的原理
      

  3.   

    如果你的背景是保持不动的话,那么我的这篇文章可以满足你的要求
    http://blog.csdn.net/happyparrot/archive/2004/06/09/21591.aspx
    如果背景经常变化的话,你最好用双缓存办法,将图片和其它内容加上你新的线都画到内存DC中,然后再BitBlt出来。
      

  4.   

    1.使用双缓冲技术绘制背景,例如背景图片。(不要在OnMouseMove中调用BitBlt之类的函数,在OnDraw、OnPaint之类的函数中绘制)
    2.在OnMouseMove绘制线条。
      

  5.   

    楼上的意思我不是很懂,
    如果不在上面的函数使用
    bitBlt,那我在内存画好的
    图什么时候显示呢?????
      

  6.   

    将你在内存中画好的图使用BitBlt在OnDraw、OnPaint之类的函数中绘制,显示。而你鼠标移动的轨迹不需要一直保留,所以可以在OnMouseMove函数中绘制。
      

  7.   

    非常感谢大家,其中happyparrot的文章就是我想要
    不过也同时感谢楼上的指教,谢谢