为什么我用鼠标按下然后让图片显示在鼠标点击到的位置!
但是点击一下就 会显示一张图片!点击一下就会显示一张图片!
于是我将代码放置到WM_PAINT里面。但这样的话!原先有反应地代码
一点儿作用也没有了!这个该怎么解决的呀?谢谢,哪位朋友帮忙解答一下O(∩_∩)O哈!!
另外就是不知道目前学习windows编程入门有哪些好一点的书籍呀!
帮忙推荐一下!

解决方案 »

  1.   

    勉勉强强看明白了问题你得发消息或调用Invalide\UpdateWindow函数强制更新,否则WM_PAINT消息不会被调用
      

  2.   

    但他这样出现了闪屏和幻影了啊!
    不知道有没有啥办法!
    可以不用InvalidateRect这个函数去更新窗口呢?
    当然在不使用这个函数的前提下,是我鼠标移动的时候图片也会时时更新更随着他移动
    至于闪屏和幻影我想我已经找到了我想要的答案了!
    现在麻烦各位帮忙解决一下如何让窗口时时更新并且不使用InvalidateRect
    非常地感谢!
      

  3.   

    1.你要实现OnPaint里面进行重绘,为了防止闪烁要使用内存dc,即缓存机制
    2.你在点击或者鼠标移动的时候调用记住鼠标位置保存到成员、静态或者全局变量中(主要是为了在你OnPaint处理时可以得到你点击的位置信息)然后调用Invalidate();将整个窗口设为无效,这时它会重绘有效区域