Visual_C__MFC扩展编程实例09
Visual_C__MFC扩展编程实例

第9 章绘图
在应用程序中,允许对位图和图标添加颜色和风格。由于所有的Wi ndows界面看起来基本上都相似,所以要使应用程序的外观看起来与他人的不同的唯一途径就是使用标记( logo)和飞溅屏幕(splash screen)。在创建自己的控件和在C AD应用程序中显示图形时,绘图显然也是很重要的。
可以用本章中的一些实例给应用程序赋予一些非同寻常的特征,本章实例包括:实例31 使用非散射( nondiff used)颜色,在本例中将看到如何用非散射的颜色绘图。在第1章中可以找到散射颜色的“悲伤经历”(sad story),但结论是对于图形应用程序,必须用非散射颜色来绘图。
实例32 伸展位图,在本例中将伸展( stretch)一个现有的位图来填充某一特定区域。实例33 抓取屏幕,在这里将看到从屏幕的某个区域抓取的图像来装载一个位图。实例34 输出一个D IB位图文件,本例将输出一个位图到一台设备无关位图( DIB)文件。
9.1 实例31:使用非散射颜色
1. 目标
用非散射的颜色绘图,希望用户设置并保存他们自己的非散射的颜色选择方案,如图9 -1所示。
2. 策略
为了在自己的应用程序中使用非散射颜色绘图,需要创建、保存并使用自己的调色板。为了做到这一点,本例将用M FC的C Palette类。为了提示用户进行颜色选择,将根据用户的选择创建一个新的属性页,该属性页对于每一种基本颜色(红色、绿色和蓝色)都有个滑动条,这样可以允许用户通过拖动滑动条到所选择颜色密度来挑选颜色。本例将用A nimatePalette()成员函数来动态改变视窗中被选择的颜色。最后使
3. 步骤
1) 创建一个应用程序调色板
在C MainFrame类中定义一个颜色数组,并且在类的构造函数中将它们设置为一些缺省颜色:
COLORREF m_rgbColors[NUM_COLORS];
: : :
C MainFrame::CMainFrame(

)
图9-1 非散射颜色选项
用G etProfileBinary()函数和WriteProfileBinary ()函数保存用户的颜色选择。
你可能喜欢
- c++经典代码大全
- MFC入门教程
- MFC计算器
- 程序代码大全
- 语言分析
- Visual_C++MFC入门教程83页
- Visual_C++MFC入门教程84页
- MFC入门教程doc75页
- C++_MFC入门教程75页
- Visual C++MFC入门教程 + 控件说明43页
- VC MFC入门教程85页
- MFC计算器介绍2页
- MFC计算器9页
- VC++MFC计算器课程设计24页
- MFC计算器14页
- MFC计算器[1]4页
- MFC计算器课程设计报告7页


