我在CXXXView()响应OnFileOpen()函数,在OnDraw()中显示文件,
但每次打开一个文件都不能立即显示,需要改变窗口的大小才能显示出来,
怎么解决啊?
另外我用TextOut显示,但是y轴到600在怎么搞啊?
我想显示的下一页写在那呢?
pDC->TextOut(50,30,RecordNo);
pDC->TextOut(50,30,RecordNo);。


pDC->TextOut(50,600,RecordNo);

解决方案 »

  1.   

    改变窗口大小才显示,你就调用下Invalidate()刷新窗口。pDC->TextOut(50,600,RecordNo);就是在y轴600啊
      

  2.   

    我在CXXXView()响应OnFileOpen()函数,在OnDraw()中显示文件,
    但每次打开一个文件都不能立即显示,需要改变窗口的大小才能显示出来,读取完之后刷新一下view就是了,Invalidate
    另外我用TextOut显示,但是y轴到600在怎么搞啊?
    我想显示的下一页写在那呢?向下滚动一下滚动条的位置SetScrollInfo,再输出
      

  3.   

    SCROLLINFO  scrollInfo;
     scrollInfo.nMin = 0;
             scrollInfo.nMax = rectL.left;
     scrollInfo.nPage = 100;
     scrollInfo.cbSize = sizeof(SCROLLINFO);
     scrollInfo.fMask = SIF_ALL;
     scrollInfo.nPos = 0;
     scrollInfo.nTrackPos = 10;
     SetScrollInfo(SB_HORZ, &scrollInfo);
      

  4.   

    我在CXXXView()响应OnFileOpen()函数,在OnDraw()中显示文件,
    但每次打开一个文件都不能立即显示,需要改变窗口的大小才能显示出来,
    ============
    打开之后调用Invalidate(),强制刷新就行了。另外我用TextOut显示,但是y轴到600在怎么搞啊?
    我想显示的下一页写在那呢?
    pDC->TextOut(50,30,RecordNo);
    pDC->TextOut(50,30,RecordNo);pDC->TextOut(50,600,RecordNo);
    ============
    你可以将你的视图类改为从CScrollView继承,这样就可以有滚动条了。
      

  5.   

    Invalidate();我加上之后,客户区在不停的闪啊,是这样的吗?
      

  6.   

    我想现实下一页,怎么做呢?
    不能说是,pDC->TextOut(50,50000,str);
    这样吧?
      

  7.   

    你是SDI/MDI吧,你直接调用CDocument类的UpdateAllViews()函数不就可以刷新视图了
      

  8.   

    我的意思就是,pDC->TextOut(5000);
    然后pDC->TextOut(6000);
    pDC->TextOut(7000);



    我不知道这样设置滚动条,能说具体一点么?
      

  9.   

    貌似这个问题跟OnDraw()函数没有关系吧...