文档库 最新最全的文档下载
当前位置:文档库 › MFC绘图函数

MFC绘图函数

画点

像素点的绘制不过是改变单个像素点的颜色。

SetPixel( ) 试图用指定的颜色画一个像素,返回绘制时使用的实际颜色

SetPixelV( ) 与上面的基本相同,但不用返回绘制时使用的实际颜色,因而速度更快

画线

画线即改变屏幕上一系列像素点的颜色。

M o v e To( ) 开始画线、弧和多边形时,把光标移动到一个初始位置

L i n e To( ) 画一条从初始位置到另一个点的直线

Arc( ) 画一段弧

A r c To( ) 画一段弧,并更新初始位置

AngleArc( ) 画一条线,然后画一段弧,并更新初始位置

PolyDraw( ) 画一系列线段和B e z i e r样条

PolyLine( ) 画一系列线段

PolyPolyLine( ) 画多个系列线条

画形状

这里的形状是一系列封闭线条。

Rectangle( ) 画一个矩形Pie( ) 画一个饼状楔形

RoundRect( ) 画一个圆角矩形

Draw3dRect( ) 画一个三维矩形

Polygon( ) 画一个多边形DrawEdge( ) 画一个矩形的边缘

PolyPolygon( ) 创建一个或多个多边形DrawFrameControl( ) 画一个框架控件

Ellipse( ) 画一个椭圆

形状填充和翻转

填充和翻转改变一个形状内的所有像素点颜色。

FillRect( ) 填充一个矩形FillSolidRect( ) 用一单色填充一个矩形

InvertRect( ) 反转一个矩形的颜色ExtFloodFill( ) 用当前画刷填充一个区域,提供比FloodFill( )成员函数更多的灵活性FrameRect( ) 画一个矩形的边框

下面三个函数包括一个区域对象,它实际上是一个线条列表,形成一个由设备环境维护

的形状。有关区域的详细讨论参见4 . 4 . 8节“剪裁属性”。

FillRgn( ) 填充一个区域InvertRgn( ) 反转一个区域的颜色

FrameRgn( ) 画一个特定区域的边框

滚动

通过滚动,可移动屏幕周围像素颜色。

ScrollDC( ) 左、右、上、下移动屏幕图像。

绘制文本

我们可能会认为文本是打印的,不是画的;但在一个图形用户界面中,甚至一个文本字

符都是由像素构成的一幅图。

TextOut( ) 在一个指定的位置,输出一个字符串

E x t TextOut( ) 在一个矩形区域里输出一个字符串

Ta b b e d TextOut( ) 基于用该函数传输的一个表,在指定位置输出一个字符串,并将字符串中的任何制表符转换为空格D r a w Text( ) 在指定的矩形域里绘制文本,但比TextOut( )有更多的选项,如把文本居中和

显示多行文本

绘制位图和图标

一个位图或图标只是大量像素的颜色阵列。通常有一个标题,用来指示在一行中有多少

像素点,以便一个画图例程知道什么时候开始下一行。通常,位图绘制例程只是把像素阵列

拷贝到视频内存中。图标具有透明色这一附加的能力,换句话说,当一个图标被绘制在屏幕

上时,它的每一点的颜色都可被屏幕上原有的颜色代替。

DrawIcon( ) 在指定的位置画一个图标

BitBlt( ) 从指定的设备环境中拷贝一个位图,通常是从磁盘中装入或在内存中创建,如

前面所述

StretchBlt( ) 与BitBlt( )基本相同,但它试图伸展或压缩一个位图以适应目标

PatBlt( ) 创建一个位模式

有关绘图的例子参见第11章。

补充:

相关文档