<img src="https://img-blog.youkuaiyun.com/20140710030546286?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvS3Vqb0p5b3Rhcm8=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);" />
以上是画直线和曲线的一些简单方法,画直线只需要将当前位置设在线的一端(dc.Moveto(nx1, ny1)),然后调用LineTo给出另一点坐标即可,例如在OnPaint函数类画出(0,0)到(100,100)的直线段代码如下
CDC * pDC = GetDC();
pDC->MoveTo(0, 0);
pDC->LineTo(100, 100);
ReleaseDC(pDC);
想接着前一条线再画一条线只需要再次调用LineTo,因为第一次调用LineTo时已设置在线的终点。
而运用Polyline或PolylineTo可以一次画多条线,区别在于PolylineTo使用设备描述表的当前位置,而Polyline不需要(即画完时当前位置不变)