CSDN博客

img chu_qun

部分MFC和API函数(1)

发表于2008/9/28 9:07:00  601人阅读

CArchive类:用于二进制保存档案
CArchive::CArchive 建立一个CArchive对象

CArchive(CFile* pFile,UINT nMode,int nBufSize=4096,void* lpBuf=NULL);
参数:pFile 指向CFile对象的指针,这个CFile对象是数据的最终源或目的;
nMode是标志,取值为CArchive::load时,从文档中加载数据(要求CFile读许可),取值为CArchive::store时,将数据存入文档(要求CFile写许可);
nBufSize 指定内部文件缓冲区的大小(按字节计);
lpBuf 指向大小为nBufSize的缓冲区,若未指定,则从局部堆中分配一缓冲区,并在该对象被删除时释放该缓冲区,但不释放用户提供的缓冲区。

CArchive::Close 关闭档案,清除缓冲区中剩余数据,断开文件与档案的连接

void Close();

操作符:

<< 存储指定的对象到档案(写),一行可以使用多个析取操作符
>> 从档案中加载指定的对象(读),一行可以有多个插入操作符

CBitmap类:封装Windows的图形设备接口(GDI)位图
CBitmap::LoadBitmap 加载位图资源

BOOL LoadBitmap(UINT nIDResource);
BOOL LoadBitmap(LPCTSTR lpszResourceName);

参数:nIDResource 位图资源ID号;lpszResourceName 位图资源名
返回值:若成功,返回非0;否则返回0

CBrush类:封装图形设备接口(GDI)中的画刷
CBrush::CreateSolidBrush 用指定颜色初始化一个单色画刷

BOOL CreateSolidBrush(COLORREF crColor);
参数:crColor 画刷颜色
返回值:若成功,返回非0;否则返回0

CButton类:提供Windows按钮控件的功能

CButton::Create 创建一个CButton对象

BOOL Create( LPCTSTR lpszCaption, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );

lpszCaption是按钮上显示的文本;
dwStyle指定按钮风格,可以是按钮风格与窗口风格的组合,取值有:
窗口风格:
WS_CHILD 子窗口,必须有
WS_VISIBLE 窗口可见,一般都有
WS_DISABLED 禁用窗口,创建初始状态为灰色不可用的按钮时使用
WS_TABSTOP 可用Tab键选择
WS_GROUP 成组,用于成组的单选按钮中的第一个按钮
按钮风格:
BS_PUSHBUTTON 下压式按钮,也即普通按钮
BS_AUTORADIOBUTTON 含自动选中状态的单选按钮
BS_RADIOBUTTON 单选按钮,不常用
BS_AUTOCHECKBOX 含自动选中状态的复选按钮
BS_CHECKBOX 复选按钮,不常用
BS_AUTO3STATE 含自动选中状态的三态复选按钮
BS_3STATE 三态复选按钮,不常用
以上风格指定了创建的按钮类型,不能同时使用,但必须有其一。
BS_BITMAP 按钮上将显示位图
BS_DEFPUSHBUTTON 设置为默认按钮,只用于下压式按钮,一个对话框中只能指定一个默认按钮
rect指定按钮的大小和位置;
pParentWnd指示拥有按钮的父窗口,不能为NULL;
nID指定与按钮关联的ID号,用上一步创建的ID号。
返回值:若成功,返回非0;否则返回0

CButton::DrawItem 重载该函数绘制一个CButton对象,由框架调用该函数

virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
参数:lpDrawItemStruct指向包含绘制项信息和要求类型的LPDRAWITEMSTRUCT结构的长指针

CButton::SetCheck 设置或复位单选按钮和复选按钮的选择状态

void SetCheck(int nCheck);
参数:nCheck 指定设置的状态,0为未选择,1为选中,2为不确定

CByteArray类:该类支持动态的字节数组
CByteArray::GetAt 获取指定下标处的数值,可以用运算符[]代替

BYTE GetAt(int nIndex)const;
参数:nIndex 数组下标,必须为有效值
返回值:指定下标处的数组元素

CByteArray::GetData 访问数组元素

BYTE *GetData();
返回值:指向数组元素的指针

CByteArray::GetSize 获取数组中元素个数

int GetSize()const;
返回值:数组的大小,比最大下标大1

CByteArray::RemoveAll 删除数组中所有元素

void RemoveAll();

CByteArray::SetAt 设置指定下标处的数值,不扩充数组

void SetAt(int nIndex,BYTE newElement);
参数:nIndex 数组下标,必须为有效值;newElement 存入数组的新元素值

CByteArray::SetAtGrow 设置指定下标处的数值,需要时可自动扩充数组

void SetAtGrow(int nIndex,BYTE newElement);
参数:nIndex 数组下标,大于等于0;newElement 存入数组的新元素值

CByteArray::SetSize 设置数组的大小,并基于需要分配内存;若新值小于原数组,则截断旧数组,释放所有未用内存。

void SetSize(int nNewSize,int nGrowBy=-1);
参数:nNewSize 新数组的大小,必须大于等于0;nGrowBy 扩大数组时至少要分配的元素数

CCmdUI类:该类仅用于ON_UPDATE_COMMAND_UI处理函数中
CCmdUI::Enable 使命令的用户界面元素有效或无效

virtual void Enable(BOOL bOn=TRUE);
参数:bOn 使用户界面元素有效时为TRUE,无效时为FALSE

CCmdUI::SetCheck 设置命令的用户界面元素为恰当的选择状态

virtual void SetCheck(int nCheck=1);
参数:nCheck 为0,设置为不选择,为1,设置为选择,为2,设置为不确定

CColorDialog类:封装标准颜色对话框
CColorDialog::CColorDialog 构造一个CColorDialog对象

CColorDialog(COLORREF clrInit=0,DWORD dwFlags=0,CWnd* pParentWnd=NULL);
参数:clrInit为缺省颜色选项,若未指定值,则为黑色;
dwFlags是标志,定制对话框的功能和外观,为0时只显示基本颜色,为CC_FULLOPEN时,显示完整颜色对话框;
pParentWnd 指向拥有对话框的父窗口

CColorDialog::GetColor 获取用户选择的颜色

COLORREF GetColor()const;
返回值:选中颜色的RGB值

CDC类:定义设备环境对象类

CDC::BitBlt 从源设备环境拷贝一个位图到当前设备环境中

BOOL BitBlt(int x,int y,int nWidth,int nHeight,CDC* pSrcDC,int xSrc,int ySrc,DWORD dwRop);
参数:x,y为目的矩形的左上角坐标;nWidth,nHeight为目的矩形的宽度和高度;pSrcDC是指向源设备环境的指针;xSrc,ySrc源位图左上角的坐标;dwRop为光栅操作码。

CDC::CreateCompatibleDC 创建一个与pDC指定的设备相兼容的内存设备环境

virtual BOOL CreateCompatibleDC(CDC* pDC);
参数:pDC 设备环境指针
返回值:若成功,返回非0;否则返回0

CDC::Detach 将设备环境从CDC对象中分离开来

HDC Detach()
返回值:分离的设备环境

CDC::DrawEdge 绘制矩形边框或边框的一部分

BOOL DrawEdge(LPRECT lpRect,UINT nEdge,UINT nFlags);
参数lpRect指向矩形的RECT结构的指针;nEdge指定矩形内外边界的风格,必须是一个内边界标志和外边界标志的组合,取值为:
BDR_RAISEDINNER:内边界凸出;
BDR_SUNKENINNER:内边界凹下;
BDR_RAISEDOUTER:外边界凸出;
BDR_SUNKENOUTER:外边界凹下;
nFlags指定边界的类型,取值为:
BF_RECT:矩形的所有四边;
BF_LEFT:矩形的左边;
BF_BOTTOM:矩形的底边;
BF_RIGHT:矩形的右边;
BF_TOP:矩形的上边;
BF_TOPLEFT:矩形的上边和左边;
BF_TOPRIGHT:矩形的上边和右边;
BF_BOTTOMLEFT:矩形的下边和左边;
BF_BOTTOMRIGHT:矩形的下边和右边。
返回值:若成功,返回非0;否则返回0。

CDC::DrawFocusRect 画一个说明输入焦点的矩形

void DrawFocusRect(LPCRECT lpRect);
参数:lpRect 指向绘制矩形的逻辑坐标的RECT结构或CRect对象。

CDC::DrawText 在指定的矩形内绘制格式化的文本

virtual int DrawText(LPCTSTR lpszString,int nCount,LPRECT lpRect,UINT nFormat);
int DrawText(const CString& str,LPRECT lpRect,UINT nFormat);
参数:lpszString指示要输出的字符串;nCount为字符串中字节数;lpRect指示文本所在的矩形;str为要输出的CString对象;nFormat为格式化文本的方式,常用取值:
DT_BOTTOM 文本底对齐,必须和DT_SINGLELINE联用;
DT_CENTER 居中显示文本; DT_LEFT 文本左对齐;
DT_RIGHT 文本右对齐; DT_TOP 正文与行顶部对齐(仅指单个行);
DT_NOCLIB 绘制时不加裁减;DT_SINGLELINE 单行显示;
DT_VCENTER 指定在垂直方向上居中显示文本(仅只单个行);
DT_WORDBREAK 若单词超过矩形边界,行将在单词间断开
返回值:若调用成功,返回文本的高度

CDC::FillSolidRect 用指定单颜色填充矩形

void FillSolidRect(LPCRECT lpRect,COLORREF clr);
void FillSolidRect(int x,int y,int cx,int cy,COLORREF clr);
参数:lpRect指定要填充的矩形;clr填充的颜色
x,y矩形的左上角坐标,cx、cy为矩形宽度和高度

CDC::FromHandle 在给予一个设备环境句柄时返回一个CDC对象指针

static CDC* PASCAL FromHandle(HDC hDC);
参数:hDC 设备环境句柄
返回值:CDC对象指针

CDC::GetTextExtent 使用当前字体计算一行文本的宽度和高度

CSize GetTextExtent(LPCTSTR lpszString,int nCount)const;
CSize GetTextExtent(const CString& str)const;
参数:lpszString指向一个字符串,nCount字符串中字符数
str 一个字符串对象
返回值:字符串文本的宽度和高度(以逻辑单位表示)

CDC::LineTo 从当前位置到指定点画直线

BOOL LineTo(int x,int y);
BOOL LineTo(POINT point);
参数:x、y为直线末端的坐标;point为直线末端的坐标
返回值:若成功,返回非0;否则返回0
该函数通常与MoveTo()函数合起来完成画线工作。

CDC::MoveTo 设置画图的起点位置

CPoint MoveTo(int x,int y);
CPoint MoveTo(POINT point);
参数:x、y为新位置的坐标;point为新位置坐标
返回值:先前位置的坐标

CDC::PaintRgn 用当前画刷填充一个CRgn对象的区域

BOOL PaintRgn(CRgn* pRgn);
参数:指向一个CRgn对象的指针
返回值:若成功,返回非0;否则返回0

CDC::Rectangle 用当前画笔画一个矩形,并用当前画刷填充为实心矩形

BOOL Rectangle(int x1,int y1,int x2,int y2);
BOOL Rectangle(LPCRECT lpRect);
参数:x1、y1为矩形左上角坐标,x2、y2为矩形右下角坐标
lpRect为RECT结构或CRect对象
返回值:若成功,返回非0;否则返回0

CDC::RestoreDC 将设备环境恢复成先前的状态

virtual BOOL RestoreDC(int nSaveDC);
参数:nSaveDC设备环境先前状态的整数标识
返回值:若成功,返回非0;否则返回0

CDC::RoundRect 用当前画笔画一个圆角矩形,并用当前画刷填充

BOOL RoundRect(int x1,int y1,int x2,int y2,int x3,int y3);
BOOL RoundRect(LPCRECT lpRect,POINT point);
参数:x1、y1为左上角坐标,x2、y2为右下角坐标,x3、y3为画圆角的椭圆的逻辑宽度和高度
lpRect为RECT结构或CRect对象,point中的x、y为画圆角的椭圆的逻辑宽度和高度
返回值:若成功,返回非0;否则返回0

CDC::SaveDC 保存设备环境的当前状态

virtual int SaveDC();
返回值:若成功,返回标识保存设备环境的整数;若错误返回0

CDC::SelectObject 将一个对象选入设备环境,替代同一类型的先前对象

CPen* SelectObject(CPen* pPen);
CBrush* SelectObject(CBrush* pBrush);
virtual CFont* SelectObject(CFont* pFont);
CBitmap* SelectObject(CBitmap* pBitmap);
int SelectObject(CRgn* pRgn);

参数:要选入的新对象的指针
返回值:先前的旧对象的指针

CDC::SelectStockObject 将一个预定义的库存对象装入设备环境

virtual CGdiObject* SelectStockObject(int nIndex);
参数:nIndex库存对象的索引值,常用取值:
BLACK_BRUSH 黑色画刷; DKGRAY_BRUSH 深灰色画刷;
GRAY_BRUSH 灰色画刷; LTGRAY_BRUSH 浅灰色画刷;
WHITE_BRUSH 白色画刷; HOLLOW_BRUSH 中空画刷;
NULL_BRUSH 空画刷;
BLACK_PEN 黑色画笔; WHITE_PEN 白色画笔;
NULL_PEN 空画笔;
SYSTEM_FONT 系统字体;
返回值:被替换的CGdiObject对象的指针,若调用失败,返回NULL

CDC::SetBkColor 设置当前背景色

virtual COLORREF SetBkColor(COLORREF crColor);
参数:crColor为新背景色
返回值:先前背景色;若错误,返回值为0x80000000

CDC::SetBkMode 设置背景模式

int SetBkMode(int nBkMode);
参数:nBkMode为要设置的背景模式,取值可以为:
OPAQUE 在绘制文本前用当前背景色填充背景,这是缺省的背景模式
TRANSPARENT 绘制前不改变背景(即文字背景透明)
返回值:先前的背景模式

CDC::SetTextColor 设置文本颜色

virtual COLORREF SetTextColor(COLORREF crColor);
参数:crColor指定文本颜色
返回值:先前的文本颜色

CDC::TextOut 用当前字体在指定位置写一字符串

virtual BOOL TextOut(int x,int y,LPCTSTR lpszString,int nCount);
BOOL TextOut(int x,int y,const CString& str);

参数:x,y文本左上角坐标;lpszString指示要输出的字符串;nCount为字符串中字节数;str为要输出的CString对象
返回值:若成功,返回非0;否则返回0

来自:http://blog.163.com/jiket_213/blog/static/31802494200861841353544/

0 0

相关博文

我的热门文章

img
取 消
img