windows画图常用函数
2012-06-08 21:04
435 查看
SetPixel()
函数功能:该函数将指定坐标处的像素设为指定的颜色。函数原型:COLORREF SetPixel(HDC hdc, int X, int Y, COLORREF crColor);
hdc
设备环境句柄。
X
指定要设置的点的X轴坐标,按逻辑单位表示坐标。
Y
指定要设置的点的Y轴坐标,按逻辑单位表示坐标。
crColor
指定要用来绘制该点的颜色。
详见:http://baike.baidu.com/view/1080396.htm
//-------------------------------------------------------------------------------
MoveToEx()
本函数将当前绘图位置移动到某个具体的点,同时也可获得之前位置的坐标
WINGDIAPI BOOL WINAPI MoveToEx(
HDC hdc,
int X,
int Y,
LPPOINT lpPoint
);
参数:
HDC hdc:传入参数,设备上下文句柄。
int X:传入参数:新位置的X坐标。
int Y:传入参数:新位置的Y坐标。
LPPOINT lpPoint:传出参数:一个指向POINT结构的指针,用来存放上一个点的位置,若此参数为NULL,则不保存上一个点的位置
详见:http://baike.baidu.com/view/1882859.htm?fromTaglist//---------------------------------------------------
Lineto()
用当前画笔画一条线,从当前位置连到一个指定的点。这个函数调用完毕,当前位置变成x,yWINGDIAPI BOOL WINAPI LineTo(
HDC hdc,
int X,
int Y,
);
参数:
hdc:设备场景句柄
X:线段终点X坐标位置,采用逻辑坐标表示。这个点不会实际画出来;它不属于线段的一部份
Y:线段终点Y坐标位置,采用逻辑坐标表示。这个点不会实际画出来;它不属于线段的一部份
详见:http://baike.baidu.com/view/2421478.htm
//---------------------------------------------------
SelectObject()
CPen* SelectObject( CPen* pPen );CBrush* SelectObject( CBrush* pBrush );
virtual CFont* SelectObject( CFont* pFont );
CBitmap* SelectObject( CBitmap* pBitmap );
int SelectObject( CRgn* pRgn );
CGdiObject* SelectObject( CGdiObject* pObject );
函数功能:该函数选择一对象到指定的设备上下文环境中,该新对象替换先前的相同类型的对象。
函数原型:HGDIOBJ SelectObject(HDC hdc, HGDIOBJ hgdiobj);
参数:
hdc:设备上下文环境的句柄。
hgdiobj:被选择的对象的句柄,该指定对象必须由如下的函数创建。
位图:CreateBitmap, CreateBitmapIndirect, CreateCompatible Bitmap, CreateDIBitmap, CreateDIBsection(只有内存设备上下文环境可选择位图,并且在同一时刻只能一个设备上下文环境选择位图)。
画刷:CreateBrushIndirect, CreateDIBPatternBrush, CreateDIBPatternBrushPt, CreateHatchBrush, CreatePatternBrush, CreateSolidBrush。
字体:CreateFont, CreateFontIndirect。
笔:CreatePen, CreatePenIndirect。
区域:CombineRgn, CreateEllipticRgn, CreateEllipticRgnIndirect, CreatePolygonRgn, CreateRectRgn, CreateRectRgnIndirect。
返回值:如果选择对象不是区域并且函数执行成功,那么返回值是被取代的对象的句柄;如果选择对象是区域并且函数执行成功,返回如下一值;
SIMPLEREGION:区域由单个矩形组成;COMPLEXREGION:区域由多个矩形组成。NULLREGION:区域为空。
如果发生错误并且选择对象不是一个区域,那么返回值为NULL,否则返回GDI_ERROR。
注释:该函数返回先前指定类型的选择对象,一个应用程序在它使用新对象进行绘制完成之后,应该用原始的缺省的对象替换新对象。
应用程序不能同时选择一个位图到多个设备上下文环境中。
ICM:如果被选择的对象是画笔或笔,那么就执行颜色管理。
速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;头文件:wingdi.h;库文件:gdi32.lib。
SelectObject()和DeleteObject()成对使用。
详见:http://baike.baidu.com/view/1080552.htm//---------------------------------------------------
DeleteObject()
函数功能:该函数删除一个逻辑笔、画笔、字体、位图、区域或者调色板,释放所有与该对象有关的系统资源,在对象被删除之后,指定的句柄也就失效了。函数原型:BOOL DeleteObject(HGDIOBJ hObject);
参数:
hObject:逻辑笔、画笔、字体、位图、区域或者调色板的句柄。
返回值:成功,返回非零值;如果指定的句柄无效或者它已被选入设备上下文环境,则返回值为零。
注释:当一个绘画对象(如笔或画笔)当前被选入一个设备上下文环境时不要删除该对象。当一个调色板画笔被删除时,与该画笔相关的位图并不被删除,该图必须单独地删除。
Windows CE:当对象在当前被选入一个设备上下文环境时,DeleteObject函数返回错误。
速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;头文件:wingdi.h;库文件:gdi32.lib。
详见:http://baike.baidu.com/view/1080524.htm
//---------------------------------------------------
Polyline()
[声明]Declare Function Polyline Lib "gdi32" (ByVal hdc As Long, lpPoint As POINTAPI, ByVal nCount As Long) As Long
[说明]
用当前画笔描绘一系列线段。使用PolylineTo函数时,当前位置会设为最后一条线段的终点。它不会由Polyline函数改动
函数原型:
BOOL Polyline( HDC hdc, CONST POINT *lppt, int cPoints)
[参数表]
hdc ------------ Long,要在其中绘图的设备场景
lpPoint -------- POINTAPI,nCount POINTAPI结构数组中的第一个POINTAPI结构
nCount --------- Long,lpPoint数组中的点数。会从第一个点到第二个点画一条线,以次类推
[返回值]
Long,非零表示成功,零表示失败
详见:http://baike.baidu.com/view/1477217.htm
//---------------------------------------------------
PolylineTo()
函数原型:BOOL PolyLineTo(HDC hdc, CONST POINT * apt, DWORD cpt);
参数:
hdc:设备场景句柄
apt:nCount POINTAPI结构数组中的第一个POINTAPI结构
cpt:Point数组中的点数
说明:
和PolyLine不同,PolyLineTo使用目前位置作为开始点,并将目前位置设定为最后
一根线的终点,根据apt的点依次画直线。设置目前位置可调用MoveToEx函数.
详见:http://baike.baidu.com/view/6280924.htm
//---------------------------------------------------
函数 | 图形 |
Rectangle | 直角矩形 |
Ellipse | 椭圆 |
RoundRect | 圆角矩形 |
Chord | 椭圆周上的弧,两端以弦连接 |
Pie | 椭圆上的饼图 |
Polygon | 多边形 |
PolyPolygon | 多个多边形 |
//---------------------------------------------------
Rectangle()函数原型:BOOL Rectangle(HDC hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect);
参数:
hdc:设备环境句柄。
nLeftRect:指定矩形左上角的逻辑X坐标。
nTopRect:指定矩形左上角的逻辑Y坐标。
nRightRect:指定矩形右下角的逻辑X坐标。
nBottomRect:指定矩形右下角的逻辑Y坐标。
返回值:如果函数调用成功,返回值非零,否则返回值为0。
Windows NT:若想获得更多错误信息,请调用GetLastError函数。
备注:此函数不使用和改变当前位置。
速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;头文件:wingdi.h;库文件:gdi32.lib。
示例:
Rectangle(hdc,0,0,100,100);
详见:http://baike.baidu.com/view/1080744.htm
//--------------------------------------------------
Ellipse()函数功能:该函数用于画一个椭圆,椭圆的中心是限定矩形的中心,使用当前画笔画椭圆,用当前的画刷填充椭圆。
函数原型:BOOL Ellipse(HDC hdc,int nLeftRect,int nTopRect,nRightRect,int nBottomRect).
参数:
hdc:设备环境句柄。
nLeftRect:指定限定椭圆左上角的X坐标。
nTopRect:指定限定椭圆左上角的Y坐标。
nRightRect:指定限定椭圆右下角的X坐标。
nBottomRect:指定限定椭圆右下角的Y坐标。
返回值:如果函数调用成功,返回值非零;如果函数调用失败,返回值是0。
//--------------------------------------------------
RoundRect()函数功能:该函数画一个带圆角的矩形,此矩形由当前画笔画轮廓,由当前画刷填充。
函数原型:BOOL RoundRect(HDC hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect, int nWidth, int nHeight);
参数:
hdc:设备环境句柄。
nLeftRect:指定矩形左上角的X坐标。
nTopRect:指定矩形左上角的Y坐标。
nRightRect:指定矩形右下角的X坐标。
nbottomRect:指定矩形右下角的Y坐标。
nWidth:指定用来画圆角的椭圆的宽。
nHeight:指定用来画圆角的椭圆的高。
返回值:如果函数调用成功,则返回值非空,否则返回值是0。
详见:http://baike.baidu.com/view/1080744.htm
相关文章推荐
- windows画图常用函数 二
- Windows C++ 常用的时间类型和函数
- windows系统函数详解(控制面板等常用函数)
- mysql语句 常用函数,js画图,在线调查系统2
- Windows下编程2----- C语言常用函数举例
- 2D画图 & CGContextRef 常用的函数和方法
- VB获取windows各常用目录的函数(模块)
- windows PC/SC 常用Scard前缀函数说明
- 常用画图函数
- 小时候常用的Windows"画图"没了!然而你真的会用吗?
- Windows 程序设计常用前缀和常用函数的用法
- windows 常用函数
- windows系统中创建线程常用哪几个函数,有什么区别?
- Windows常用系统函数
- 收集Windows开发常用函数,供大家分享。(不断更新中...)
- Windows上几个常用的获取时间戳函数的效率比较
- windows 串口常用的几个函数
- ios画图常用的函数
- Windows.h中常用的函数
- ffmpeg.c函数结构简单分析(画图)