My FAQ,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > Visual C++ > BasicDelphi
《Windows程序设计》学习笔记(五)
作者:i_doit 时间:2001-10-14 10:18 出处:互联网 责编:MyFAQ
              摘要:《Windows程序设计》学习笔记(五)

第五章  图形基础(一)-----基础知识

    前面几章涉及了一些在窗口客户绘制图形的知识和运用,本章比较详细的讲解了图形绘制的基本原理和运用。
        Windows提供了几百个GDI函数,我们通过调用GDI函数在Windows上进行各种绘图操作。GDI使我们的绘图与设备无关,也就是说可以在Windows支持的任意一种输出设备上绘图而不用考虑这些设备的特性。
    几乎每一个GDI函数都需要一个设备环境(DC)的句柄作为参数,设备环境中包括许多确定GDI函数如何在设备上工作的当前属性,比如:字体,文本色,线的颜色,线的粗细等。要获得设备环境中的这些信息,可以用GetDeviceCaps()函数。
    每一个绘图的过程都是如下面的顺序来进行的:
    获取一个设备环境句柄 ----> 利用设备环境句柄和GDI函数进行绘图 ---->  释放设备环境句柄
    Windows提供了几种获取和释放设备环境句柄的方法:
   
    A)在处理WM_PAINT时
      hdc = BeginPaint(hwnd, &ps);
      [ other program lines ]
      EndPaint(hwnd, &ps);(在前面的章节经常用到)
   
     B)在处理非WM_PAINT时
      hdc = GetDC(hwnd);
      [ other program lines ]
      ReleaseDC(hwnd, hdc);
    
      C)获得整个窗口的设备环境句柄
       hdc = GetWindowDC(hwnd);
       [ other program lines ]
       ReleaseDC(hwnd, hdc);
     
      D)获得整个屏幕的设备环境句柄
       hdc = CreateDc(TEXT("DISPLAY", NULL, NULL, NULL);
     
      E)只获取整个屏幕的设备环境句柄而不绘图
       hdc = CreateIC(TEXT("DISPLAY", NULL, NULL, NULL);

       某些情况下,我们需要改变某些设备环境的属性,用改变后的属性进行绘图,然后恢复原来的设备环境。可以通过下面的函数来保存现在的设备环境:
        idSaved = SaveDC(hdc);
        然后用下面的函数恢复原来的设备环境:
        RestoreDC(hdc, idSaved);
        或者用下面的方法实现同样的功能:
        SaveDC(hdc);
        RestoreDC(hdc, -1);

        Windows提供了一些GDI对象(画笔,刷子等),我们可以创建这些对象把它们选入设备环境中,Windows就可以用这些对象绘制各种图形了。
       

 

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 myfaq.com.cn All rights reserved. www.myfaq.com.cn 版权所有