我想画直线,可是我又不想在OnDraw()和OnPaint()里画,应该怎么画?

解决方案 »

  1.   

    如在视类的某个函数中画:
      CDC* pDC = GetDC();
      pDC->...;//绘图代码
      ReleaseDC(pDC);若在其它地方话,则可以先得到视类指针,pView->GetDC()即可。
      

  2.   

    (1)如果你想在客户去画的话,你可以 CDC* pDC = GetDC()或者声明CClientDC dc( this)(需要手工释放),来得到设备,然后利用设备对象的画图函数完成;
    (2)如果你想在某些窗口对象上画(如按纽、工具栏等),你得到窗口对象所关联的设备(DC),然后利用设备对象的画图函数完成,你应该先得到该对象的句柄。如在对话框中用GetDlgItem(按纽ID)得到按纽句柄。