WIN32编程入门之GDI绘图.ppt
文本预览下载声明
GDI绘图的画布 GDI绘图的画布 GDI基本图形—像素操作 GDI基本图形—直线 GDI基本图形—直线 GDI基本图形—矩形 GDI基本图形—圆角矩形 GDI基本图形—椭圆 GDI的画笔—使用系统画笔 GDI的画笔—创建画笔 GDI的画笔—创建画笔 GDI—填充区域 GDI的画刷—使用系统画刷 GDI的画刷—创建画刷 GDI的画刷—创建画刷 GDI—基本图形 GDI—其他部分 * 第二部分 Win32 SDK编程 绘图的画布—窗口客户区参数: typedef struct _RECT { LONG left; //矩形左上角的x坐标. LONG top; //矩形左上角的y坐标. LONG right; //矩形右下角的x坐标. LONG bottom; //矩形右下角的y坐标. } RECT; 获得窗口客户区域参数: BOOL GetClientRect ( HWND hWnd, // 窗口句柄 LPRECT lpRect //矩形结构体地址 ); 获取时机:在WM_PAINT消息中获得的是窗口尺寸改变 后的客户区参数,如果想要画出来的图形随窗口变化,需要在该消息中使用该函数。 设备上显示的图形型态本身可以被分为几类: 设置像素的颜色 COLORREF SetPixel ( HDC hdc, // 设备环境句柄 int X, // 像素的x坐标 int Y, // 像素的y坐标 COLORREF crColor // 像素颜色 ); 设备上显示的图形型态本身可以被分为几类: 直线和曲线 线条是所有向量图形绘制系统的基础。GDI支持直线、矩形、椭圆(包括椭圆的子集,也就是我们所说的「圆」)、椭圆圆周上的部分曲线即所谓的「弧」以及贝塞尔曲线(Bezier spline)。所有更复杂的曲线可由折线(polyline)代替,折线通过一组非常短的直线来定义一条曲线。线条用设备内容中选中的目前画笔绘制。 GetCurrentPositionEx (hdc, pt) ; BOOL MoveToEx ( HDC hdc, // 设备句柄 int X, // 目标点的x坐标 int Y, // 目标点的y坐标 LPPOINT lpPoint // 存放当前点的结构体指针 ); BOOL LineTo ( HDC hdc, // 设备句柄 int nXEnd, // 终点的x坐标 int nYEnd // 终点的y坐标 ); BOOL Rectangle ( HDC hdc, // 设备句柄 int nLeftRect, // 包围矩形的左上角x坐标 int nTopRect, //包围矩形的左上角x坐标 int nRightRect, //包围矩形的右下角x坐标 int nBottomRect //包围矩形的右下角y坐标 ); BOOL RoundRect ( HDC hdc, // 设备句柄 int nLeftRect, //包围矩形的左上角x坐标 int nTopRect, // 包围矩形的左上角y坐标 int nRightRect, // 包围矩形的右下角x坐标 int nBottomRect, //包围矩形的右下角y坐标 int nWidth, // 用于画圆角的椭圆的宽度 int nHeight //用于画圆角的椭圆的高度 ); BOOL Ellipse ( HDC hdc, // 设备句柄 int nLeftRect, // 包围矩形的左上角x坐标 int nTopRect, //包围矩形的左上角x坐标 int nRightRect, //包围矩形的右下角x坐标 int nBottomRect //包围矩形的右下角y坐标 ); 怎样改变绘图时使用的线型以及线条的颜色: HPEN hPen,oldPen; hPen =(HPEN) GetStockObject(WHITE_PEN); oldPen = (HPEN)SelectO
显示全部