字体
第(1/6)页
关灯
   存书签 书架管理 返回目录
    ,用于完成特定cāo作。

    通常使用CDC 类的方法是传递一个CDC 的指针pDC 到OnDraw 函数,在OnDraw 函数

    中调用它的成员函数完成绘图cāo作。

    使用完毕后应该及时删除构造的CDC 对象。Windows 限制了可使用的设备上下文的数

    量,如果删除一个设备上下文对象失败,将会占用一小部分内存,直到程序退出。要确保设

    备上下文对象被删除,最容易的方法是在堆栈上构造对象。

    也可通过CWnd::GetDC()成员函数来获得设备上下文指针,这种情况下必须调用

    ReleaseDC 函数来释放设备环境。

    7.3.2 GDI 对象

    Windows 的GDI 对象都是从基类CGdiObject 派生而来。可以通过调用GDI 派生类的构

    造函数来创建GDI 对象。GDI 对象如下:

    ? CBitmap;

    ? CBrush;

    ? CPen;

    ? CFont;

    ? CRgn;

    ? CPalette。

    枫叶文学网www.fywxw.com

    第7 章 图形图像

    ·167·

    7.4 画笔和画刷

    画笔(CPen)和画刷(CBrush)是最常用的两个GDI 对象。本节通过两个实例,详细

    介绍这两个对象的使用方法。

    7.4.1 画笔

    实例7-1:画笔使用实例实例。源代码在光盘中“\07\实例7-1\CpuUsage”目录下。

    1.创建程序

    下面通过动态显示CPU 的使用记录的例子介绍画笔的使用方法。利用Visual C++的

    AppWizard 创建一个基于对话框的应用程序CpuUsage,为对话框添加一个静态文本框控件和

    一个group box 控件。为对话框类CCpuUsageDlg 添加成员变量,如表7-1 所示。

    表7-1 CCpuUsageDlg 的成员变量表

    成员变量 类型 作用

    m_btnView CButton 显示区域

    m_strCpuUsage CString 显示字符串

    m_UsageHistory int[] CPU 使用记录

    m_tcomr int 计时器

    m_Usage CCpuUsage 测试Cpu 使用率类

    2.编写代码

    (1)初始化对话框

    修改CCpuUsageDlg 的成员函数OnInitDialog,对变量做初始化。代码如下:

    BOOL CCpuUsageDlg::OnInitDialog()

    {

    CDialog::OnInitDialog();

    // Add "About..."comnu item to systemcomnu.

    // IDM_ABOUTBOX must be in the system command range.

    ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);

    ASSERT(IDM_ABOUTBOX < 0xF000);


上一章 目录 下一页