VS2010和MFC编程入门之50(图形图像:GDI对象之画笔CPen)
9页1、VS2010MFC编程入门之五十(图形图像:GDI 对象之画笔CPen )理解了 CDC 类及其屏幕绘图函数,这里主要内容是GDI 对象之画笔CPen。GDI对象在 MFC 中, CGdiObject 类是 GDI 对象的基类,通过查阅MSDN 我们可以看到,CGdiObject 类有六个直接的派生类, GDI 对象主要也是这六个,分别是: CBitmap 、 CBrush 、CFont 、 CPalette 、CPen 和 CRgn。在这六个 GDI 对象中,最常用的莫过于画笔和画刷了,即CPen 类和 CBrush 类。本文就主要讲解画笔的使用。画笔的应用实例在这里直接通过一个波形图的实例,来详细讲解画笔的使用方法。首先介绍此实例要实现的功能:在对话框上有一个Picture 控件,将此控件的背景填充为黑色;启动一个定时器,每次定时器到时,所有波形数据都前移一个单位,并获取一个 80 以内的随机数作为波形的最后一个数据,然后以绿色画笔在绘图控件上绘制波形。这样就实现了波形的绘制及动态变化。下面是具体实施步骤:1 、创建一个基于对话框的MFC 工程,名字设为“Example50 ”。2
2、 、在自动生成的对话框模板 IDD_EXAMPLE50_DIALOG 中,删除“ TODO: Place dialog controls here. ”静态文本框,添加一个 Picture 控件, ID 设为 IDC_WAVE_DRAW 。3 、为 Picture 控件 IDC_WAVE_DRAW 添加 CStatic 变量,名称设为m_picDraw 。4 、在文件 Example50Dlg.h文件中 CExample50Dlg 类声明的上面添加宏定义:C+ 代码#define POINT_COUNT 100此符号常量的意义是波形的点数,这里用define将其定义为符号常量是为了方便以后可能的修改,假如我们以后想将点数改为200 ,则只改此宏定义就可以了:#define POINT_COUNT 200,而如果没有使用符号常量,在程序中直接使用了100 ,那么就需要将所有使用 100 的位置找出来,并替换为 200 ,这样不仅麻烦也很容易出错,所以最好是将其定义为符号常量。5 、在 CExample50Dlg.h 文件中为 CExample50Dlg 类添加成员数组:C+ 代码intm
3、_nzValuesPOINT_COUNT;此数组用于存放波形数据。6 、在 CExample50Dlg 类的构造函数中为数组m_nzValues 的元素赋初值:C+ 代码CExample50Dlg:CExample50Dlg(CWnd* pParent /*=NULL*/): CDialogEx(CExample50Dlg:IDD, pParent)m_hIcon = AfxGetApp()-LoadIcon(IDR_MAINFRAME);/ 将数组 m_nzValues 的元素都初始化为 0 memset(m_nzValues, 0, sizeof(int) * POINT_COUNT);7 、在 CExample50Dlg 对话框的初始化成员函数CExample50Dlg:OnInitDialog()中,构造随机数生成器,并启动定时器。CExample50Dlg:OnInitDialog()修改如下:C+ 代码BOOL CExample50Dlg:OnInitDialog()CDialogEx:OnInitDialog();/ Add About. menu item to sys
《VS2010和MFC编程入门之50(图形图像:GDI对象之画笔CPen)》由会员公****分享,可在线阅读,更多相关《VS2010和MFC编程入门之50(图形图像:GDI对象之画笔CPen)》请在金锄头文库上搜索。
学期教学计划四篇_4.doc
2022年五四党委书记讲话
凤凰城混凝土工程施工方案
小学教师学期工作计划范文(二篇).doc
电话业务员工作计划(2篇).doc
吴昌硕和他的十三大弟子
2022广西梧州职业学院医护人员招聘5人笔试参考题库含答案解析
如何做一名幸福的班主任
展览会安全工作方案
暖通空调工艺:浅析散热器散热量设备的调节应用.doc
2023年卫生院年终总结范文个人(2篇).doc
银行优秀员工演讲稿5篇
14《我要的是葫芦》教学设计(二上)
26、小石潭记
土地流转租赁合同范文(四篇).doc
英语代词练习题(DOC 14页)
商务局年度工作报告及工作计划范文
2022学年小学教研工作计划
检验工作计划7篇(试验检测工作计划)
IE问题解决方法汇总-排错篇
2023-07-17 4页
2023-03-09 3页
2024-03-11 39页
2024-01-18 4页
2023-12-19 5页
2024-01-28 6页
2022-12-02 10页
2024-02-02 12页
2023-05-05 8页
2022-12-05 2页