1.
CWnd*pWnd=GetDlgItem(IDC_STATIC);
IDC_STATIC这个ID号比较特殊
你可以改成其他的ID

解决方案 »

  1.   

    你看一下第一句的返回值,一定是NULL
    理由如wistaria
      

  2.   

    1.不要用IDC_STATIC这个ID,一定要改为别的ID.
    2.那就不要在OnDraw中画图了,你可以在任何地方得到DC,然后对他进行画图,但是这样一旦图像被遮住,图像就丢了,因为没有重画!
      

  3.   

    关于问题一:
    没有试过这样做,问题的关键是能不能在OnPaint()中画控件呢?一般画控件是在OnCtrlColor()函数中的,换个思路吧!
      

  4.   

    第2点问题就象我的Scroll的聊天记录一样,解决方法简单:在你需要画历史趋势图的地方使用CDC*pControlDC=pWnd->GetDC();
    //画你的图
    pWnd->Invalidate();
    pWnd->UpdateWindow();
    pWnd->ReleaseDC(pControlDC);
    不要放到OnPaint(),在你需要处理的地方处理就可以了,观念放开些。
      

  5.   

    我的源程序:http://vg.dyndns.org/pub/winpopup.zip,可参考一下。
      

  6.   

    1.改IDC_STATIC为其余标实或从CStatic派生一个类
    2.数据改变时用GetDC随时重画,OnDraw中根据最新数据重画