📄 untitled-05.txt
字号:
34 MFC Windows程序设计(第2版)
除非有特殊原因,否则在自己的窗口外画图是件很不友好的事情。
2.1.2设备描述表属性
当使用CDC输出函数在屏幕上画图时,输出的某些特性并没有在函数调用过程中规
定,但可通过设备描述表自身获得。例如,在调用 CDC:: DrawTeXt时,要指定待输出的字符
申和显示该字符串的矩形区域,但不必规定文本颜色和字体,因为它们是设备描述表的属
性。表2-2列出了一些设备描述表中最常用的属性和访问这些属性的CDC函数。
表2.2主要设备描述表属性
Attribute Default Set with Det wAn
文本颜色 Black CDC:: S。tTextColor CDC:: GeffextColor
背景颜色 White CDC:: S。tBkColor CDC:: GetBkColor
背景模式 OPAQUE CDC:: SetBkMode CDC:: GetBkMode
映射模式 MM—TEXT CDC:: SetMapMode CDC:: GetMapMode
绘图模式 RZ.COPYPEN CDC:: SetR0pp CDC:: GetR0ffi
当前位置(0,0) CDC:: MoveTO CDC:: GetCurrentPosihon
当前画笔 BLACXIPEN CDC::Selectobect CDC::Selectobject
当前画刷 WHITE—BRUSH CDC::Selectobject CDC::Selectobject
当前字体 SYSTEM.FONT CDC::Selectobject CDC::Selectobject
不同的CDC输出函数以不同的方式使用设备描述表的属性。例如,在用lineTo画线时,
当前的画笔决定了线的颜色、宽度和样式(实线、虚线、点划线等等)。类似地,在使用Rectange
函数画矩形时,GDI用当前的画笔画矩形区域的边界,并用当前的笔刷填充该矩形区域。所有
的文本输出函数都采用当前的字体。在文本输出时,文本颜色和背景颜色决定了所有用到的
颜色。文本颜色决定了字符的颜色,而背景颜色决定字符后面的填充色。在使用lineTO函数
画虚线或点划线时,背景颜色还用于填充线段间空隙,或用来填充阴影画笔所画标记间的空白
处。如果想忽略背景颜色,可将背景模式设置为“transparen”(透明),如:
dc. SetBAN。de( TRANSPARENT);
在第1章的Hello程序中,在DrawText调用之前加人该语句会消除环绕着“Hello,MFC”
的白色的矩形。这个白色矩形在背景颜色不是白色的时候是可见的。
最常用来定义设备描述表属性的 CDC函数是 Selectobject。下面所列的是 6个 GDI对
象,可由 Selectobject选人设备描述表。
.画笔(Pen)
.画刷(Brush)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -