如题,毕业设计的一部分,要做一个实现滚动字幕的对话框,各位高手帮帮忙,我在线等的!·

解决方案 »

  1.   

    两种方法:
    1.不停的擦除重画要滚动的文本OnPaint
    2.将要滚动的文本作为到一个控件或窗体,让它在其父窗体中的OnTimer中MoveWindow
      

  2.   

    您好谢谢您的回答,我曾试过在onpaint()中擦写窗口,代码如下:
             CWnd * pWnd =GetDlgItem(IDC_STATIC);
      CDC * pControlDC = pWnd->GetDC();
      pWnd->Invalidate();
      pWnd->UpdateWindow();
      pControlDC->TextOut(22,1,"显示的文字");
      pWnd->ReleaseDC(pControlDC);
    return TRUE;  但是编译的时候总出错,请您帮我看下吧?
      

  3.   

    谢谢您了,[email protected]
    请问如何给您加分呢?
    我第一次来:)
      

  4.   

    PentiumMMX,还在么?其他人也可以的,帮忙给个用OnPaint函数实现滚动文本的代码可以么?
      

  5.   

    问题出在这一行。CWnd * pWnd =GetDlgItem(IDC_STATIC);IDC_STATIC不是一个控件ID。
    如果你需要得到控件窗口的话,必须给它定义另外一个ID。比如:IDC_STATIC1
      

  6.   

    int m_nX;
    OnPaint(CDC *dc)
    {
    dc->TextOut(m_nX, 100, "今天去哪里玩儿");}OnTime
    {
    m_nX++;
    if (m_nX == 200)
    {
    m_nX = -20;
    }
    }