画线函数有以下七种:
1LIneto 画直线
2Polyline和PolylineTo 画一条由多条首尾相连的直线构成的折线
3PolyPolyline 画多条折线
4Arc 画椭圆弧线
5PolyBezier和PolyBesierTo 画赛尔样曲线
6ArcTo和AngleArc 画椭圆弧线
7PolyDraw 画多条赛尔样曲线
画一条线,必须调用两个函数
1MoveToEx(hdc,xBeg,yBeg,NULL);//起点
2LineTo(hdc,xEnd,yEnd);//终点
看看下面的代码,为了节约地盘,我只是拷贝过程函数的一部分
case WM_PAINT:
hdc=BeginPaint(hwnd,&ps);
GetClientRect(hwnd,&rect);
for(x=0;x
MoveToEx(hdc,x,0,NULL);
LineTo(hdc,x,rect.bottom);
}
for(y=0;y
MoveToEx(hdc,0,y,NULL);
LineTo(hdc,rect.right,y);
}
EndPaint(hwnd,&ps);
return 0;
结果如下:
//前面定义了五个点POINT apt[5]={100,100,200,100,200,200,100,200,100,100};
case WM_PAINT:
hdc=BeginPaint(hwnd,&ps);
GetClientRect(hwnd,&rect);
MoveToEx(hdc,apt[0].x,apt[0].y,NULL);
for(i=1;i<5;++i){
LineTo(hdc,apt[i].x,apt[i].y);
}
//PolylineTo(hdc,apt+1,4);和Polyline(hdc,apt,5);这两条语句和上面的功能是一样的,画一个矩形
EndPaint(hwnd,&ps);
return 0;
结果如下: