这一篇就来了解一下windows的绘图API。
在windows应用程序中如果想要画图,就必须调用一定的接口,而这个接口需要有一定的库来支持。
这里,我们就用比较简单的GDI32.dll这个库提供的接口来进行画图。这个库默认在系统中有,并不需要包含进来。
先看下这一篇能够实现的效果:
很简洁。它的代码如下:
//窗口过程处理函数
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_DESTROY:
PostQuitMessage(0);
return 0;
case WM_PAINT:
//1.获得设备环境
//2.调用GDI接口
//3.释放设备环境
PAINTSTRUCT ps;
HDC hdc = BeginPaint(hwnd, &ps);
//矩形
Rectangle(hdc, 0, 0, 100, 100);
//扇形
Pie(hdc, 100, 0, 200, 100, 100, 0, 150, 50);
//椭圆 不过这里因为长宽相同,所以变成了圆,其实圆算是椭圆中一种特殊的圆了
Ellipse(hdc, 200, 0, 300, 100);
//圆角矩形
RoundRect(hdc, 300, 0, 400, 100, 10, 10);
//三角形
MoveToEx(hdc, 400, 100, NULL);
LineTo(hdc, 500, 100);
LineTo(hdc, 450, 0);
LineTo(hdc, 400, 100);
MoveToEx(hdc,0, 0, NULL);
//三角形的另一种画法
POINT apt[4] = { 300, 300, 400, 300, 350, 200 ,300,300};
MoveToEx(hdc,300, 300,NULL);
PolylineTo(hdc, apt, 4);
EndPaint(hwnd, &ps);
return 0;
}
return DefWindowProc(hwnd, message, wPar