【vc++精品源码栏目提醒】:以下是网学会员为您推荐的vc++精品源码-vc 编程技术600个大型项目源码(三) - 电子设计,希望本篇文章对您学习有所帮助。
利用VC开发ASP图像处理组件 加入日期:2004-12-20 【收藏文章】【对此文发表评论】【保存文章至硬盘】【打印文章】【字体大 中 小】 作者符文科 龙飞 发布时间 2004-04 作者符文科 西北师范大学2001级计算机成人专升本 E-Mail vchahame.net 联系方式 0931-8553848 网站 http://www.ourcode.net 代码下载http://www.nwnu.net/src/XTAspImage_to_vckbase.rar 一 VC中的DC环境及GUI有关的各种对象 在Windows中有各种图形用户界面GUIGraphics User Interface对象当我们在进行绘图时就需要利用这些对象。
而各种对象都拥有各种属性下面首先介绍几种GUI对象和拥有的属性。
一 GUI有关的各种对象 在Windows中有各种图形用户界面GUIGraphics User Interface对象当我们在进行绘图时就需要利用这些对象。
而各种对象都拥有各种属性下面首先介绍几种GUI对象和拥有的属性。
字体对象CFont 字体对象CFont用于输出文字时选用不同风格和大小的字体。
可选择的风格包括是否为斜体是否为粗体字体名称是否有下划线等。
刷子CBrush对象 刷子CBrush对象决定填充区域时所采用的颜色或模板。
对于一个固定色的刷子来讲它的属性为颜色是否采用网格和网格的类型如水平的垂直的交叉的等。
也可以利用88的位图来创建一个自定义模板的刷子在使用这种刷子填充时系统会利用位图逐步填充区域。
画笔CPen 画笔CPen对象在画点和画线时有用。
它的属性包括颜色宽度线的风格如虚线实线点划线等。
位图CBitmap对象 位图CBitmap对象可以包含一幅图像可以保存在资源中。
CPalette调色板 CPalette调色板是一种颜色映射接口它允许应用程序在不影响其他应用程序的前提下可以充分利用输出设备的颜色描绘能力。
此外系统中还拥有一些库存GUI对象你可以利用CDC::SelectStockObjectSelectStockObject int nIndex 选入这些对象它们包括一些固定颜色的刷子画笔和一些基本字体。
如 BLACK_BRUSH 黑色刷子 NULL_BRUSH 空刷子 WHITE_PEN 白色画笔 DEVICE_DEFAULT_FONT 默认字体 在Windows中使用GUI对象必须遵守一定的规则。
首先需要创建一个合法的对象不同的对象创建方法不同。
然后需要将该GUI对象选入DC中同时保存DC中原来的GUI对象。
如果选入一个非法的对象将会引起异常。
在使用完后应该恢复原来的对象这一点特别重要如果保存一个临时对象在DC中而在临时对象被销毁后可能引起异常。
有一点必须注意每一个对象在重新创建前必须销毁下面的代码演示了这一种安全的使用方法 OnDrawCDC pDC a CPen pen1pen2 b pen1.CreatePenPS_SOLID2RGB128128128//创建画笔对象一 c pen2.CreatePenPS_SOLID2RGB1281280//创建画笔对象二 d CPen pOldPenCPenpDC-gtSelectObjectamppen1//选择对象进DC e drawWithPen1... f CPenpDC-gtSelectObjectamppen2//选择对象进DC g drawWithPen2... h pen1.DeleteObject//再次创建前先销毁 i pen1.CreatePenPS_SOLID2RGB000//再次创建对象 j CPenpDC-gtSelectObjectamppen1//选择对象进DC k drawWithPen1... l pDC-gtSelectObjectpOldPen//恢复 OnDrawCDC pDC 函数是VC中最常见的图形输出刷新函数参数pDC 为CDC类的一个指针我们通过它进行画图操作。
代码a行定义CPen 类的两个画笔对象pen1pen2 分别在行bc 调用CPen 类成员函数CreatePen 创建两个实心画笔 其颜色RGB值分别为RGB128128128 RGB1281280。
行d 将新创建的画笔pen1选入当前设备上下文DC环境并将旧画笔保存在pOldPen里这样在e行输出的图形或文本线条将以pen1的属性填充。
f g 行选入画笔二并输出。
i j 行销毁画笔一并且创建RGB000色的画笔k行输出。
最后一行l行将旧画笔选入当前DC环境输出完毕。
字体对象刷子对象及位图对象的使用方法同上具体使用将在下面的实例中描述。
在绘图时都需要一个DC对象DCDevice Context设备环境对象是一个抽象的作图环境可能是对应屏幕也可能是对应打印机或其它。
这个环境是设备无关的所以在对不同的设备输出时只需要