Windows GDI绘图基础与轻量进阶

本文介绍了Windows GDI的基础绘图操作,包括绘制矩形、带圆角矩形、椭圆和直线。进一步探讨了画笔和画刷的创建与使用,以实现更丰富的图形效果。
摘要由CSDN通过智能技术生成
GDI 是 Graphics Device Interface 的缩写,称为图形设备接口,主要用来绘图,由动态链接库 GDI32.DLL 提供支持。

GDI 就是一个函数库,提供了很多绘图函数(也就是GDI32.DLL 中的导出函数),上节使用的 TextOut 就是其中之一。GDI 非常重要,不但应用程序使用它来绘图,Windows 本身也使用GDI来显示用户界面,比如菜单、滚动条、图标和鼠标指针等。

GDI 基础

这一部分讲解如何绘制简单的图形,而在轻量进阶部分讲解如何美化图形。
1) 绘制矩形
Rectangle 函数可以在窗口上绘制一个矩形,它的原型为:
    
    
    
  1. BOOL Rectangle(
  2. HDC hdc, //设备环境句柄
  3. int nLeftRect, //矩形左上角x坐标
  4. int nTopRect, //矩形左上角y坐标
  5. int nRightRect, //矩形右下角x坐标
  6. int nBottomRect //矩形右下角y坐标
  7. );
示例代码:
    
    
    
  1. case WM_PAINT:
  2. hdc = BeginPaint(hwnd, &ps);
  3. Rectangle(hdc, 50, 50, 150, 150);
  4. EndPaint(hwnd, &ps);
  5. return 0 ;
运行效果:


注意:坐标的原点都是客户区的左上角。
2) 带圆角的矩形
如果您觉得上面矩形过于方正,那么可以使用 RoundRect 函数,它可以画出带有圆角边框的矩形,原型为:
    
    
    
  1. BOOL RoundRect(
  2. HDC hdc, //设备环境句柄
  3. int nLeftRect, //矩形左上角x坐标
  4. int nTopRect, //矩形左上角y坐标
  5. int nRightRect, //矩形右下角x坐标
  6. int nBottomRect, //矩形右下角y坐标
  7. int nWidth, //用来画圆角的椭圆的宽度
  8. int nHeight //用来画圆角的椭圆的高度
  9. );
注意:当 nHeight >= nBottomRect 且 nWidth = nRightRect 时,那么绘制出的就是一个圆。

示例代码:
    
    
    
  1. case WM_PAINT:
  2. hdc = BeginPaint(hwnd, &ps);
  3. RoundRect(hdc, 20, 20, 150, 150, 25, 25);
  4. EndPaint(hwnd, &ps);
  5. return 0 ;
运行效果:

3) 绘制椭圆
Ellipse() 函数可以用来绘制椭圆,它的原型为:
    
    
    
  1. BOOL Ellipse(
  2. HDC hdc, //设备环境句柄
  3. int nLeftRect, //左上角x坐标
  4. int nTopRect, //左上角y坐标</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值