基于VC++ PNG按钮的实现【1】

来源:互联网 发布:q系列plc编程 编辑:程序博客网 时间:2024/06/06 00:57

基于VC++PNG按钮的实现

荀康生

【摘 要】 本文先介绍VC++编程的优势,接着详细介绍GDI+GDI+Windows XP中的一个子系统,它主要负责在显示屏幕和打印设备输出有关信息,它是一组通过C++类实现的应用程序编程接口。作为图形设备接口的GDI+使得应用程序开发人员在输出屏幕和打印机信息的时候只需调用GDI+库输出的类的一些方法即可完成图形操作。 GDI+使得图形硬件和应用程序相互隔离,从而使开发人员编写设备无关的应用程序变得非常容易。在此基础上,详细阐述了在Windows境下利用VC++进行PNG按钮的实现,并详细介绍了在MFC下实现PNG实例的代码。

【关键词】:GDI+ PNG VC++ MFC

Based on VC + + PNG button to achieve

Abstract: Thisarticle introduced the first VC + + programming strengths, followed bydetails of GDI +, GDI + is a Windows XP system, which is mainlyresponsible for the display screen and print output device-relatedinformation, it is through a set of C + + Class The realization of theApplication Programming Interface. As the Graphics Device Interface GDI+ allows application developers in the output screen and printerinformation only when called GDI + library output of some kind ofmethod to complete the graphics operations. GDI+ makes graphics hardware and applications that isolation with eachother, so that the device-independent developers to write applicationsvery easily. On this basis, detailed in the territory under Windowsusing VC + + for the realization of the PNG button, and details of MFCin PNG under the code examples.

Key words: GDI +; PNG; VC + +; MFC

一、VC++的优势
      Visual C++是一个功能强大的可视化应用程序开发工具,用于Windows环境下32位的应用程序的开发,是计算机世界公认的最优秀的应用开发工具之一。在Visual C++环境下,利用Microsoft的基本类库MFC,可以使用完全的面向对象的方法来进行Windows 95/98/NT应用程序的开发,使得Windows程序员从大量的复杂劳动中解救出来,体会到真正的程序语言的强大功能和良好的灵活性。
      Visual C++
的优势有以下几点:
   
() 面向对象的程序设计方法的使用
    Visual C++
编程是采用了面向对象的程序设计方法,面向对象的程序设计吸取了结构化程序设计的精华,他利用了人们根据对事物分类和抽象的倾向,引入了类和对象的概念,具有封装性、继承和多态的特点。

()强大的MFC优势
      MFC
Visual C++形式封装了大部分的Windows API来表示框架、窗口、对话框、设备上下文、公共GDI对象和其他标准的Windows部件。这些类提供了一个面向Windows结构的简单的C++成员函数的接口。
   
应用MFC编程有下列优点:
      
1 MFC提供了一个标准化的结构,提高了程序开发的效率。
      
2 类库中的各种对象所提供的强大功能可以完成程序中的绝大部分所需功能,使应用程序在功能和性能2个方面满足要求。
      
3 MFC完全支持Windows所有的函数、控件、消息、GDI基本图形函数、菜单及对话框。
      
4 使用MFC易学易用,开发出的应用程序具有标准的、熟悉的Windows界面,还支持所有标准Windows特性。MFC类库的可靠性很高,不会影响所开发程序的可靠性和正确性。
      
总之,利用MFC还可以方便地调用Windows中与多媒体有关的API函数,可以方便快捷地开发多媒体应用程序,节省大量重复时间,缩短开发周期。[4]
   
()丰富的技术资源
      Visual C++
中集成了大量的最新技术,如ActiveXCOM等技术。

二、利用图形设备接口(GDI+)的编程特点

() 什么是GDI+[4]

GDI+Windows XP中的一个子系统,它主要负责在显示屏幕和打印设备输出有关信息,它是一组通过C++类实现的应用程序编程接口。作为图形设备接口的GDI+使得应用程序开发人员在输出屏幕和打印机信息的时候只需调用GDI+库输出的类的一些方法即可完成图形操作,真正的绘图工作由这些方法交给特定的设备驱动程序来完成,GDI+使得图形硬件和应用程序相互隔离,从而使开发人员编写设备无关的应用程序变得非常容易。[4]

()GDI+新增功能[1]

1渐变的画刷

GDI+允许用户创建一个沿路径或直线渐变的画刷,来填充外形,路径和区域,渐变画刷同样也可以画直线、曲线、路径,当你用一个线形画刷填充一个外形时,颜色就能够沿外形逐渐变化。

2基数样条函数

GDI+支持基数样条函数。基数样条是一组单个曲线按照一定的顺序连接而成的一条较大曲线,样条由一系列点指定,并通过每一个指定的点。由于基数样条平滑地穿过组中的每一个点(不出现尖角),因而它比用直线连接创建的路径更精确。

3持久路径对象

GDI+中,绘图工作由Graphics对象来完成,你可以创建几个与Graphics分开的路径对象,绘图操作时路径对象不被破环,这样你就可以多次使用同一个路径对象画路径了。

4变形和矩阵对象

GDI+提供了矩阵对象,一个非常强大的工具,使得编写图形的旋转、平移、缩放代码变得非常容易。

5可伸缩区域

GDI+用世界坐标存储区域(Regions),允许对区域进行任何图形变换(譬如如图所示的缩放),图形变换以变换矩阵存储。

6多种图像格式支持.

GDI+除了支持BMPGDI支持的图形格式外,还支持JPEGJoint Photographic Experts Group)、GIFGraphics Interchange Format)、PNGExchangeable Image File)、TIFFTag Image File Format)等图像格式

7其它