刚学GDI+,建立了一个单文档工程,在OnDraw函数中画直线,但是却显示不出来,代码如下:void CLineView::OnDraw(CDC* pDC)
{
CLineDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here Graphics graphics(*pDC);
Pen myPen(Color::Red);
myPen.SetWidth(2);
graphics.DrawLine(&myPen, 0, 0, 200, 300);
}弄不明白什么原因,向高手请教!

解决方案 »

  1.   

    改成下面这样试试:void CLineView::OnDraw(CDC* pDC)
    {
        CLineDoc* pDoc = GetDocument();
        ASSERT_VALID(pDoc);
        // TODO: add draw code for native data here    Graphics graphics(pDC->m_hDC);
        Pen myPen(Color(255,255,0,0),1);
        myPen.SetWidth(2);
        graphics.DrawLine(&myPen, 0, 0, 200, 300);
    }颜色可以直接给参数 可以直接带上画笔宽度 不用再使用SetWidth
      

  2.   

    已经弄明白了,因为没有初始化GDI+,谢谢Tinary3v0!