请用Visual C++绘制矩形,椭圆,直线

来源:百度知道 编辑:UC知道 时间:2024/06/07 10:40:48
各位大侠帮忙写出该题程序,本人将感激不尽。

……就是三个函数。
可以使用CDC类的成员函数(限mfc),也可使用api函数。
矩形:
Rectangle(1,1,100,100);
椭圆:
Ellipse(1,1,100,100);
直线:
MoveTo(1,1);
LineTo(1,1);

上面是CDC的成员函数,如果api的,为每个函数添加一个DC句柄参数做为第一个参数(MoveTo不用加)即可

//…前面我就代码省略不写了
case WM_PAINT:
HDC hdc;
PAINTSTRUCT ps;
RECT rt;
int x,y;//手机打代码真辛苦-_-!
hdc=::BeginPaint(hWnd,&ps);
//取得窗口客户区大小
::GetClientRect(hWnd,&rt);
//画行
for(x=0;x<rt.right-rt.left;x+=50)
{::MoveToEx(hdc,x,0,NULL);
::LineTo(hdc,x,rt.bottom-rt.top);
}
//画圆
Ellipse(hdc,rt.left,rt.top,rt.right,rt.bottom);
//画矩
Rectangle(hdc,rt.left-60,rt.top-60,rt.right-60,rt.bottom-60);
//释放dc
::EndPaint(hWnd,&ps);
break;

GDI....