在单文档程序中CVIEW类我设置继承于CSCROLLVIEW类
然后在CVIEW类中的OnDraw函数中读取文件中的内容:pDC->DrawText(sLine,-1,&ScrollRect,DT_TOP |DT_NOPREFIX | DT_SINGLELINE);显示到文档中后,移动滚动条到下面再返回顶部的时候字就全没有了
这应该是重绘的问题
请问大家如何让文字在滚动条移动过程中始终显示出来
最好有代码
小弟菜鸟,谢过了

解决方案 »

  1.   

    CSCROLLVIEW类应用于类似浏览大图片的应用中。
    你想让图案一直呆在屏幕的固定位置上,可以不用CSCROLLVIEW类。
    因为它把DC的坐标原点与滚动条的位置挂上了钩。
    如果你非要用的话,你在描画之前,把坐标原点给恢复一下也行。
      

  2.   

    应该是没有触发Paint消息,如果这样不行,你可以把写文字的这句话放到滚动条的滚动时来画,即当滚动条有动作发生时,即重画内容,这样就不会出现不显示文字的情况了,当然你在Ondraw函数里仍然得保留绘画的动作,因为比如你在切换窗口或其他触发Paint消息的动作时,才能将内容更新,而不会出现不重绘的情况
      

  3.   

    Invaldate()
    这个函数会执行ON_WM_ERASEBKGND  消息
    你在ON_WM_ERASEBKGND这个消息里写你显示你的文字。。
      

  4.   

    lz可以去看下孙鑫教程 里面有讲到在SCrollview绘制相关的