Windows序设计课件第六章.pptVIP

  • 0
  • 0
  • 约2.31千字
  • 约 30页
  • 2017-05-15 发布于贵州
  • 举报
Windows序设计课件第六章

* 2.2 绘制区域 如何绘制美观的区域? 画笔与画刷(Pen / Brush) CreateSolidBrush,CreateHatchBrush 将画笔/画刷选入DC:SelectObject * 问题 绘图函数最适宜于放在程序的哪个部分?为什么? * 3. 坐标系统 * 3.1 坐标映射方式 映射方法 逻辑单位 X与Y轴方向 MM_TEXT 像素 MM_LOMETRIC 0.1mm MM_HIMETRIC 0.01mm MM_LOENGLISH 0.01英寸 MM_HIENGLISH 0.001英寸 MM_TWIPS 1/1440英寸 MM_ISOTROPIC 自定义(x=y) 自定义 MM_ANISOTROPIC 自定义(x!=y) 自定义 +x +y +x -y +x -y +x -y +x -y +x -y * 3.2 如何设置坐标系 SetMapMode SetWindowExtEx SetViewportExtEx SetViewportOrgEx Your drawing code... * 4. 实例剖析 * 绘制正弦曲线 在客户区绘制正弦曲线 客户区范围:GetClientRect 如何映射 x=[0,2*pi], y=sin(x) 到整个客户区? 使用Polyline函数绘制 * 本节课小结 * 重要概念 设备环境(DC:Device Context) 坐标系统 * 新的API DC相关 GetWindowDC, GetDC 绘制图形相关 LineTo, Polyline, Polygon, Ecllipse,... 画笔 / 画刷 CreatePen,CreateSolidBrush SelectObject, DeleteObject * 第六讲 Windows界面编程-2 主讲:何军 2011-秋季学期 * Refreshing 在程序中使用资源 程序中的键盘消息与鼠标消息 简单的打字程序 * Outline GDI与设备环境 基本的绘图函数 坐标系统 实例剖析 * 1. GDI与设备环境 * 1.1 GDI 什么是GDI? Graphics Device Interface(图形设备接口) * GDI作用 打印机 Windows GDI 显示器 Windows Programming * 1.2 设备环境 设备环境/DC (Device Context) GDI函数在显示设备特定区域的工作方式 在显示设备绘制图形? 必须首先获得DC的Handle * 1.3 DC中有什么? DC(设备环境)是Windows系统内部的数据结构 客户区的位置范围 字体、颜色、画笔、刷子、坐标系统 等等 * 1.4 使用DC 两个途径 WM_PAINT消息处理中 非WM_PAINT消息处理 * 1.4 使用DC WM_PAINT消息处理中 case WM_PAINT: { char szText[] = “Hi everyone!”; PAINTSTRUCT ps; HDC hdc = ::BeginPaint(hwnd, ps); ::TextOut(hdc, 0, 0, szText, strlen(szText)); ::EndPaint(hwnd, ps); return 0; } * 1.4 使用DC 非WM_PAINT消息处理-1 GetWindowDC case WM_LBUTTONDOWN: { char szText[] = “Hi everyone!”; HDC hdc = ::GetWindowDC(hwnd); ::TextOut(hdc, 0, 0, szText, strlen(szText)); ::ReleaseDC(hwnd, hdc); return 0; } * 1.4 使用DC 非WM_PAINT消息处理-2 GetDC case WM_LBUTTONDOWN: { char szText[] = “Hi everyone!”; HDC hdc = ::GetDC(hwnd); ::TextOut(hdc, 0, 0, szText, strlen(szText)); ::ReleaseDC(hwnd,hdc); return 0; } * 1.4 使用DC 问题:希望屏幕能够持久的显示内容,该怎么使用DC? WM_PAINT? 非WM_PAINT? * 1.5 更改DC状态方法 问题 能否直接修改Devi

文档评论(0)

1亿VIP精品文档

相关文档