`
nanjingjiangbiao_T
  • 浏览: 2572379 次
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

【精心整理】【实用】visual C++中最常用的类与API函数

 
阅读更多


这篇文章能让初学者快速了解visual C++MFC中常见的核心的类与函数,虽然全部看下来有点枯燥,但对初学者快速了解MFC的框架结构很有好处。



常用类


CArchive类:用于二进制保存档案
CBitmap类:封装Windows的图形设备接口(GDI)位图
CBrush类:封装图形设备接口(GDI)中的画刷
CButton类:提供Windows按钮控件的功能
CByteArray类:该类支持动态的字节数组
CCmdUI类:该类仅用于ON_UPDATE_COMMAND_UI处理函数中
CColorDialog类:封装标准颜色对话框
CDC类:定义设备环境对象类
CDialog类:所有对话框(模态或非模态)的基类
CDocument类:提供用户定义的文档类的基本功能
CEdit类:是一个用于编辑控件的类
CFile类:该类是基本文件类的基类
CFileDialog类:封装了打开和保存文件的标准对话框
CFindReplaceDialog类:封装了标准查找/替换对话框
CFont类:封装了Windows图形设备接口(GDI)中的字体对象
CFontDialog类:封装了字体选择对话框
CGdiObject类:GDI绘图工具的基类
CIPAddressCtrl类:提供了IP地址控件的功能
CImageList类:管理大小相同的图标或位图集
CMenu类:封装应用程序菜单栏和弹出式菜单
CPen类:封装了Windows图形设备接口(GDI)中的画笔对象
CPoint类:操作CPoint和POINT结构
CRect类:封装了一个矩形区域及相关操作
CRgn类:封装用于操作窗口中的椭圆、多边形或者不规则区域的GDI区域
CSize类:用于表示相对坐标或位置
CSpinButtonCtrl类:旋转控件Spin的控制类
CStatusBar类:状态栏窗口的基类
CString类:处理字符串
CStringList类:支持CString对象的列表
CWinApp类:派生的程序对象的基类
CWnd类:提供所有窗口类的基本函数





API函数


CArchive类:用于二进制保存档案
CArchive::CArchive建立一个CArchive对象
CArchive(CFile*pFile,UINTnMode,intnBufSize=4096,void*lpBuf=NULL);
参数:pFile指向CFile对象的指针,这个CFile对象是数据的最终源或目的;
nMode是标志,取值为CArchive::load时,从文档中加载数据(要求CFile读许可),取值为CArchive::store时,将数据存入文档(要求CFile写许可);
nBufSize指定内部文件缓冲区的大小(按字节计);
lpBuf指向大小为nBufSize的缓冲区,若未指定,则从局部堆中分配一缓冲区,并在该对象被删除时释放该缓冲区,但不释放用户提供的缓冲区。
CArchive::Close关闭档案,清除缓冲区中剩余数据,断开文件与档案的连接
voidClose();

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

CBitmap类:封装Windows的图形设备接口(GDI)位图
CBitmap::LoadBitmap加载位图资源
BOOLLoadBitmap(UINTnIDResource);
BOOLLoadBitmap(LPCTSTRlpszResourceName);
参数:nIDResource位图资源ID号;lpszResourceName位图资源名
返回值:若成功,返回非0;否则返回0

CBrush类:封装图形设备接口(GDI)中的画刷
CBrush::CreateSolidBrush用指定颜色初始化一个单色画刷
BOOLCreateSolidBrush(COLORREFcrColor);
参数:crColor画刷颜色
返回值:若成功,返回非0;否则返回0

CButton类:提供Windows按钮控件的功能
CButton::Create创建一个CButton对象

BOOLCreate(LPCTSTRlpszCaption,DWORDdwStyle,constRECT&rect,CWnd*pParentWnd,UINTnID);

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对象,由框架调用该函数
virtualvoidDrawItem(LPDRAWITEMSTRUCTlpDrawItemStruct);
参数:lpDrawItemStruct指向包含绘制项信息和要求类型的LPDRAWITEMSTRUCT结构的长指针

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

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

CByteArray类:该类支持动态的字节数组
CByteArray::GetAt获取指定下标处的数值,可以用运算符[]代替
BYTEGetAt(intnIndex)const;
参数:nIndex数组下标,必须为有效值
返回值:指定下标处的数组元素

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

CByteArray::GetSize获取数组中元素个数
intGetSize()const;
返回值:数组的大小,比最大下标大1

CByteArray::RemoveAll删除数组中所有元素
voidRemoveAll();

CByteArray::SetAt设置指定下标处的数值,不扩充数组
voidSetAt(intnIndex,BYTEnewElement);
参数:nIndex数组下标,必须为有效值;newElement存入数组的新元素值

CByteArray::SetAtGrow设置指定下标处的数值,需要时可自动扩充数组
voidSetAtGrow(intnIndex,BYTEnewElement);
参数:nIndex数组下标,大于等于0;newElement存入数组的新元素值

CByteArray::SetSize设置数组的大小,并基于需要分配内存;若新值小于原数组,则截断旧数组,释放所有未用内存。
voidSetSize(intnNewSize,intnGrowBy=-1);
参数:nNewSize新数组的大小,必须大于等于0;nGrowBy扩大数组时至少要分配的元素数

CCmdUI类:该类仅用于ON_UPDATE_COMMAND_UI处理函数中
CCmdUI::Enable使命令的用户界面元素有效或无效
virtualvoidEnable(BOOLbOn=TRUE);
参数:bOn使用户界面元素有效时为TRUE,无效时为FALSE

CCmdUI::SetCheck设置命令的用户界面元素为恰当的选择状态
virtualvoidSetCheck(intnCheck=1);
参数:nCheck为0,设置为不选择,为1,设置为选择,为2,设置为不确定

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

CColorDialog::GetColor获取用户选择的颜色
COLORREFGetColor()const;
返回值:选中颜色的RGB值

CDC类:定义设备环境对象类
CDC::BitBlt从源设备环境拷贝一个位图到当前设备环境中

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

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

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

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

HDCDetach()
返回值:分离的设备环境
CDC::DrawEdge绘制矩形边框或边框的一部分

BOOLDrawEdge(LPRECTlpRect,UINTnEdge,UINTnFlags);
参数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画一个说明输入焦点的矩形

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

CDC::DrawText在指定的矩形内绘制格式化的文本
virtualintDrawText(LPCTSTRlpszString,intnCount,LPRECTlpRect,UINTnFormat);
intDrawText(constCString&str,LPRECTlpRect,UINTnFormat);
参数: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用指定单颜色填充矩形
voidFillSolidRect(LPCRECTlpRect,COLORREFclr);
voidFillSolidRect(intx,inty,intcx,intcy,COLORREFclr);
参数:lpRect指定要填充的矩形;clr填充的颜色
x,y矩形的左上角坐标,cx、cy为矩形宽度和高度

CDC::FromHandle在给予一个设备环境句柄时返回一个CDC对象指针
staticCDC*PASCALFromHandle(HDChDC);
参数:hDC设备环境句柄
返回值:CDC对象指针

CDC::GetTextExtent使用当前字体计算一行文本的宽度和高度
CSizeGetTextExtent(LPCTSTRlpszString,intnCount)const;
CSizeGetTextExtent(constCString&str)const;
参数:lpszString指向一个字符串,nCount字符串中字符数
str一个字符串对象
返回值:字符串文本的宽度和高度(以逻辑单位表示)

CDC::GetTextMetrics检取当前字体的规格
BOOLGetTextMetrics(LPTEXTMETRIClpMetrics)const;
参数:lpMetrics指向用于接收字体规格的TEXTMETRIC结构
返回值:若成功,返回非0;否则返回0

CDC::LineTo从当前位置到指定点画直线
BOOLLineTo(intx,inty);
BOOLLineTo(POINTpoint);
参数:x、y为直线末端的坐标;point为直线末端的坐标
返回值:若成功,返回非0;否则返回0
该函数通常与MoveTo()函数合起来完成画线工作。

CDC::MoveTo设置画图的起点位置
CPointMoveTo(intx,inty);
CPointMoveTo(POINTpoint);
参数:x、y为新位置的坐标;point为新位置坐标
返回值:先前位置的坐标

CDC::PaintRgn用当前画刷填充一个CRgn对象的区域
BOOLPaintRgn(CRgn*pRgn);
参数:指向一个CRgn对象的指针
返回值:若成功,返回非0;否则返回0

CDC::Rectangle用当前画笔画一个矩形,并用当前画刷填充为实心矩形
BOOLRectangle(intx1,inty1,intx2,inty2);
BOOLRectangle(LPCRECTlpRect);
参数:x1、y1为矩形左上角坐标,x2、y2为矩形右下角坐标
lpRect为RECT结构或CRect对象
返回值:若成功,返回非0;否则返回0

CDC::RestoreDC将设备环境恢复成先前的状态
virtualBOOLRestoreDC(intnSaveDC);
参数:nSaveDC设备环境先前状态的整数标识
返回值:若成功,返回非0;否则返回0

CDC::RoundRect用当前画笔画一个圆角矩形,并用当前画刷填充
BOOLRoundRect(intx1,inty1,intx2,inty2,intx3,inty3);
BOOLRoundRect(LPCRECTlpRect,POINTpoint);
参数:x1、y1为左上角坐标,x2、y2为右下角坐标,x3、y3为画圆角的椭圆的逻辑宽度和高度
lpRect为RECT结构或CRect对象,point中的x、y为画圆角的椭圆的逻辑宽度和高度
返回值:若成功,返回非0;否则返回0

CDC::SaveDC保存设备环境的当前状态
virtualintSaveDC();
返回值:若成功,返回标识保存设备环境的整数;若错误返回0

CDC::SelectObject将一个对象选入设备环境,替代同一类型的先前对象
CPen*SelectObject(CPen*pPen);
CBrush*SelectObject(CBrush*pBrush);
virtualCFont*SelectObject(CFont*pFont);
CBitmap*SelectObject(CBitmap*pBitmap);
intSelectObject(CRgn*pRgn);
参数:要选入的新对象的指针
返回值:先前的旧对象的指针

CDC::SelectStockObject将一个预定义的库存对象装入设备环境
virtualCGdiObject*SelectStockObject(intnIndex);
参数: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设置当前背景色
virtualCOLORREFSetBkColor(COLORREFcrColor);
参数:crColor为新背景色
返回值:先前背景色;若错误,返回值为0x80000000

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

CDC::SetTextColor设置文本颜色
virtualCOLORREFSetTextColor(COLORREFcrColor);
参数:crColor指定文本颜色
返回值:先前的文本颜色

CDC::TextOut用当前字体在指定位置写一字符串
virtualBOOLTextOut(intx,inty,LPCTSTRlpszString,intnCount);
BOOLTextOut(intx,inty,constCString&str);
参数:x,y文本左上角坐标;lpszString指示要输出的字符串;nCount为字符串中字节数;str为要输出的CString对象
返回值:若成功,返回非0;否则返回0

CDialog类:所有对话框(模态或非模态)的基类
CDialog::DoModal激活模态对话框,完成后返回对话框结果
virtualintDoModal();
返回值:若不可创建对话框,返回-1;若错误返回IOABORT;若用户用“确定”按钮退出对话框,返回IDOK,否则返回IDCANCEL或0

CDocument类:提供用户定义的文档类的基本功能
CDocument::CanCloseFrame在关闭框架窗口之间由框架调用

virtualBOOLCanCloseFrame(CFrameWnd*pFrame);
参数:pFrame指向连接到该文档上的一个视的框架窗口

CDocument::SetTitle指定文档的标题
virtualvoidSetTitle(LPCTSTRlpszTitle);
参数:lpszTitle指向用作文档标题的字符串

CEdit类:是一个用于编辑控件的类
CEdit::Copy将编辑控件中的当前选择以CF_TEXT格式拷贝到剪贴板中

voidCopy();

CEdit::Cut剪切编辑控件中所选文本并以CF_TEXT格式拷贝到剪贴板中
voidCut();

CEdit::GetModify确定控件内容是否修改

BOOLGetModify()const;
返回值:若控件内容已修改,返回非0值,否则返回0。

CEdit::GetSel获取编辑控件中当前选择的位置

DWORDGetSel()const;
voidGetSel(int&nStartChar,int&nEndChar)const;
参数:nStartChar用于接收当前选择的第一个字符的位置;nEndChar用于接收当前选择后面第一个未选字符的位置。
返回值:低位字和高位字分别是当前选择开始和选择区后第一个未选字符的位置。
CEdit::Paste将数据从剪贴板插入到编辑控件中的当前光标处
voidPaste();
CEdit::ReplaceSel用指定的文本替换编辑控件内选择的文本
voidReplaceSel(LPCTSTRlpszNewText,BOOLbCanUndo=FALSE);
参数:lpszNewText指向替换文本的字符串;bCanUndo为TRUE时,指定该操作可以用Undo()撤销

CEdit::SetLimitText设置CEdit控件可接收文本的最大字节数
voidSetLimitText(UINTnMax);
参数:nMax新文本限制,按字节计。

CEdit::SetModify设置控件修改标志

voidSetModify(BOOLbModified=TRUE);
参数:bModified为TRUE,指示控件已修改,为FALSE,清除修改标志

CEdit::SetSel设置编辑控件中选择的字符
voidSetSel(DWORDdwSelection,BOOLbNoScroll=FALSE);
voidSetSel(intnStartChar,intnEndChar,BOOLbNoScroll=FALSE);
参数:dwSelection若低位字为0而高位字为-1,则选择所有文本;若低位为-1,则撤销当前选择;bNoScroll为FALSE时插入字符滚入视野,否则插入字符不滚入视野;
nStartChar指定选择的起始位置,nEndChar指定选择的终止位置;若nStartChar为0且nEndChar为-1,选择所有文本;若nStartChar为-1,撤销当前选择

CFile类:该类是基本文件类的基类
CFile::Close关闭文件,使该文件不可用于读写
virtualvoidClose();

CFile::GetLength求文件长度(以字节计)
virtualDWORDGetLength()const;
返回值:文件长度

CFile::Open打开文件
virtualBOOLOpen(LPCTSTRlpszFileName,UINTnOpenFlags,CFileException*pError=NULL);
参数:lpszFileName指定打开文件的路径;nOpenFlags定义文件的共享和存取方式;pError指向一个已有的文件异常对象的指针。
nOpenFlags的常用取值:
CFile::modeCreate创建一个新文件,若文件已存在,则该文件被清空;
CFile::modeRead用于只读;CFile::modeReadWrite用于读写;
CFile::modeWrite用于只写;CFile::modeNoInherit阻止文件被子进程继承;
返回值:若打开成功,返回非0;否则返回0

CFile::Read从文件中读一段数据到一缓冲区中
virtualUINTRead(void*lpBuf,UINTnCount);
参数:lpBuf指向用户定义的缓冲区;nCount为要从文件中读出的最大字节数
返回值:传输给缓冲区的字节数,可小于nCount所指定的值

CFile::Rename重命名文件(静态函数),目录不可重命名

staticvoidPASCALRename(LPCTSTRlpszOldName,LPCTSTRlpszNewName);
参数:lpszOldName旧路径名
lpszNewName新路径名

CFile::Remove删除指定文件(静态函数),不可删除目录
staticvoidPASCALRemove(LPCTSTRlpszFileName);
参数:lpszFileName指向删除文件的路径名字符串

CFile::Seek定位当前文件指针

virtualLONGSeek(LONGlOff,UINTnFrom);
参数:lOff指针移动的字节数,为正时,向后移动,为负时,向前移动
nFrom指针移动方式,可以是下列值之一:
CFile::begin将文件指针从文件头移动lOff个字节;
CFile::current将文件指针从当前位置移动lOff个字节;
CFile::end将文件指针从文件尾移动lOff个字节;

CFile::SeekToBegin将文件指针设置到文件头,相当于Seek(0L,CFile::begin)

voidSeekToBegin();

CFile::SeekToEnd将文件指针设置到文件尾,相当于Seek(0L,CFile::end)

DWORDSeekToEnd();返回值:文件的字节长度

CFile::Write将数据从一缓冲区写入文件中
virtualvoidWrite(constvoid*lpBuf,UINTnCount);
参数:lpBuf指向用户定义的缓冲区;nCount为要从缓冲区传输的字节数

CFileDialog类:封装了打开和保存文件的标准对话框
CFileDialog::CFileDialog构造一个标准Windows文件对话框对象
CFileDialog(BOOLbOpenFileDialog,LPCTSTRlpszDefExt=NULL,LPCTSTRlpszFileName=NULL,DWORDdwFlags=OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,LPCTSTRlpszFilter=NULL,CWnd*pParentWnd=NULL);
参数:bOpenFileDialog为TRUE时构造打开文件对话框,为FALSE时构造另存为对话框;
lpszDefExt指定缺省文件扩展名,在对话框弹出后,若没有在文件名框中输入扩展名,则自动附加指定的扩展名,若lpszDefExt为NULL,则不附加扩展名;
lpszFileName指定出现在文件名框中的初始文件名,若为NULL,则无初始文件名;
dwFlags为定制对话框的标志组合;
lpszFilter指定文件过滤器
CFileDialog::GetFileExt检取对话框中输入的文件扩展名
CStringGetFileExt()const;

CFileDialog::GetFileName检取对话框中输入的文件名,不包括路径
CStringGetFileName()const;

CFileDialog::GetNextPathName检取对话框中选定的一组文件中的下一个文件的全路径
CStringGetNextPathName(POSITION&pos)const;
参数:pos指定位置的POSITION值,执行后,为下一项的POSITION值;若已到列表尾,执行后为NULL
返回值:文件的全路径

CFileDialog::GetPathName检取对话框中输入的文件全路径
CStringGetPathName()const;

CFileDialog::GetStartPosition获取列表中第一个文件路径名的位置
POSITIONGetStartPosition()const;
返回值:列表中第一个文件路径名的POSITION值;若列表为空,返回NULL
说明:用于多选列表,要求m_ofn.Flags设置了OFN_ALLOWMULTISELECT标志

CFindReplaceDialog类:封装了标准查找/替换对话框
CFindReplaceDialog::Create创建一个Find或Find/Replace对话框对象

BOOLCreate(BOOLbFindDialogOnly,LPCTSTRlpszFindWhat,LPCTSTRlpszReplaceWhat=NULL,DWORDdwFlag=FR_DOWN,CWnd*pParentWnd=NULL);
参数:bFindDialogOnly为TRUE时,显示查找对话框,为FALSE时,显示查找/替换对话框;
lpszFindWhat指定要查找的串的缺省值;
lpszReplaceWhat指定替换串的缺省值;
dwFlag为标志位,用来定制对话框,它可以是一个或多个标志的组合,主要取值如下:
FR_DOWN如果设置,对话框中的“向下查找”单选按钮被选中,如果没有设置,“向上查找”单选按钮被选中;
FR_HIDEUPDOWN不显示查找方向单选按钮;
FR_HIDEMATCHCASE不显示区分大小写复选按钮;
FR_HIDEWHOLEWORD不显示全字匹配复选按钮;
FR_MATCHCASE使区分大小写复选按钮处于选中状态;
FR_WHOLEWORD使全字匹配复选按钮处于选中状态;
FR_NOMATCHCASE使区分大小写复选按钮处于禁止(变灰)状态;
FR_NOUPDOWN使查找方向单选按钮处于禁止(变灰)状态;
FR_NOWHOLEWORD使全字匹配复选按钮处于禁止(变灰)状态;
FR_SHOWHELP在对话框中显示一个帮助按钮。
pParentWnd指向父窗口或属主窗口的指针。
返回值:若创建成功,返回非0值,否则返回0。

CFindReplaceDialog::FindNext确定用户是否要查找串的下一个出现处。

BOOLFindNext()const;
返回值:若用户单击查找“下一个”按钮,则返回非0值,否则返回0。

CFindReplaceDialog::GetFindString检取对话框中的查找字符串

CStringGetFindString()const;
返回值:对话框中的查找字符串

CFindReplaceDialog::GetNotifier检取当前查找/替换对话框的指针

staticCFindReplaceDialog*PASCALGetNotifier(LPARAMlParam);
参数:lParam传递给回调函数OnFindReplace()的lParam值
返回值:指向当前查找/替换对话框的指针

CFindReplaceDialog::GetReplaceString检取对话框中的替换字符串

CStringGetReplaceString()const;
返回值:对话框中的替换字符串

CFindReplaceDialog::IsTerminating检取对话框是否终止

BOOLIsTerminating()const;
返回值:若用户终止对话框,返回非0值,否则返回0

CFindReplaceDialog::MatchCase检取区分大小写复选按钮状态

BOOLMatchCase()const;
返回值:如果区分大小写复选按钮被选择,返回非0值,否则返回0
CFindReplaceDialog::MatchWholeWord检取全字匹配复选按钮状态

BOOLMatchWholeWord()const;
返回值:如果全字匹配复选按钮被选择,返回非0值,否则返回0

CFindReplaceDialog::ReplaceAll确定用户是否要求全部替换

BOOLReplaceAll()const;
返回值:如果用户要求全部替换,返回非0值,否则返回0

CFindReplaceDialog::ReplaceCurrent确定用户是否要求替换当前选择串

BOOLReplaceCurrent()const;
返回值:如果用户要求替换当前选择串,返回非0值,否则返回0

CFindReplaceDialog::SearchDown检取查找方向

BOOLSearchDown()const;
返回值:如果为向下查找,返回非0值;若为向上查找,返回0

CFont类:封装了Windows图形设备接口(GDI)中的字体对象
CFont::CreatePointFont创建指定打印字样和点大小的字体
BOOLCreatePointFont(intnPointSize,LPCTSTRlpszFaceName,CDC*pDC==NULL);
参数:nPointSize请求字体的高度(以十分之一点计);lpszFaceName字体的字样名
返回值:若成功,返回非0;否则返回0

CFontDialog类:封装了字体选择对话框
CFontDialog::CFontDialog构造一个CFontDialog对象
CFontDialog(LPLOGFONTlplfInitial=NULL,DWORDdwFlags=CF_EFFECTS|CF_SCREENFONTS,CDC*pdcPrinter=NULL,CWnd*pParentWnd=NULL);
参数:lplfInitial是一个指向LOGFONT结构的指针;dwFlags一些标志;pdcPrinter指向打印机设备环境的指针;pParentWnd指向该字体对话框的父窗口的指针

CFontDialog::GetFaceName获取选定的字体名
CStringGetFaceName()const;

CFontDialog::GetSize获取选定的字体大小
intGetSize()const;

CGdiObject类:GDI绘图工具的基类
CGdiObject::DeleteObject释放与连接的GDI对象相关的所有系统存储,从内存中将其删除
BOOLDeleteObject();
返回值:若GDI对象被成功删除,返回非0;否则返回0

CGdiObject::GetSafeHandle获取连接的WindowsGDI对象的句柄
HGDIOBJGetSafeHandle()const;
返回值:所连接的WindowsGDI对象的句柄,若没有连接WindowsGDI对象,则返回NULL

CIPAddressCtrl类:提供了IP地址控件的功能
CIPAddressCtrl::ClearAddress清除IP地址控件中的内容。
voidClearAddress();

CIPAddressCtrl::Create创建一个IP地址控件。
BOOLCreate(DWORDdwStyle,RECT&rect,CWnd*pParentWnd,UINTnID);
参数:dwStyle为控件风格,可使用窗口风格的组合;rect控件大小和位置;pParentWnd指向父窗口的指针,不能为NULL;nID控件的ID。
返回值:若成功,返回非0;否则返回0

CIPAddressCtrl::GetAddress获取IP地址控件中的地址值。
intGetAddress(BYTE&nField0,BYTE&nField1,BYTE&nField2,BYTE&nField3);
intGetAddress(DWORD&dwAddress);
第一种形式是把IP地址的4个域填充到用4个引用中。
第二种形式是把IP地址填充到1个长整数的引用中。
返回值:IP地址控件中非空域的数量。

CIPAddressCtrl::IsBlank判断IP地址控件中所有域是否为空。
BOOLIsBlank();
返回值:如果IP地址控件的所有域均为空,返回非0值;否则返回0。

CIPAddressCtrl::SetAddress设置IP地址控件中的地址值。
voidSetAddress(BYTEnField0,BYTEnField1,BYTEnField2,BYTEnField3);
voidSetAddress(DWORDdwAddress);

第一种形式是用4个0~255的整数分别设置IP地址各个域的值。
第二种形式是用1个长整数设置IP地址值。
返回值:无

CIPAddressCtrl::SetFieldFocus把输入焦点设置在指定的域中。
voidSetFieldFocus(WORDnField);
参数:nField取值为0~3,如果大于3,则焦点设置到第一个空域中,若所有域均非空,则焦点设置在第一个域中。
返回值:无

CIPAddressCtrl::SetFieldRange设置指定域中数值的取值范围。
voidSetFieldRange(intnField,BYTEnLower,BYTEnUpper);
参数:nField域索引,取值0~3;nLower域的下限值;nUpper:域的上限值。
返回值:无

CImageList类:管理大小相同的图标或位图集
CImageList::Add在影像列表中添加一个或多个影像或图标
intAdd(CBitmap*pbmImage,CBitmap*pbmMark);
参数:pbmImage指向包含影像位图的指针;pbmMark指向包含屏蔽位图的指针,若没有屏蔽,此参数被忽略。
返回值:若成功,返回第一个影像的以0为基的索引,否则返回-1。

CImageList::Create构造一个CImageList对象
BOOLCreate(intcx,intcy,BOOLbMark,intnInitial,intnGrow);
参数:cx、cy为影像大小,以像素为单位;bMark若影像包含屏蔽则为TRUE,否则为FALSE;nInitial包含的影像数;nGrow当需要改变列表大小时,允许扩大到的影像数。
返回值:若成功,返回非0;否则返回0

CMenu类:封装应用程序菜单栏和弹出式菜单
CMenu::DestoryMenu撤销菜单及所用的Windows资源

BOOLDestoryMenu();
返回值:若菜单撤销成功,则返回非0值;否则返回0。
说明:撤销之前需用Detach()将菜单与CMenu对象断开连接。

CMenu::Detach将一菜单与CMenu对象断开连接

HMENUDetach();
返回值:若函数成功,返回菜单的句柄;否则返回NULL。

CMenu::GetSubMenu检取一个菜单中的弹出式子菜单对象

CMenu*GetSubMenu(intnPos)const;
参数:nPos弹出式子菜单在父菜单中的位置,从0开始算起
返回值:若给定位置存在一个弹出式子菜单,返回指向子菜单对象的指针;否则返回NULL。

CMenu::InsertMenu在菜单中插入一个新的菜单项

BOOLInsertMenu(UINTnPosition,UINTnFlag,UINTnIDNewItem=0,LPCTSTRlpszNewItem=NULL);
BOOLInsertMenu(UINTnPosition,UINTnFlag,UINTnIDNewItem,constCBitmap*pBmp);
参数:nPosition指定要插入的菜单项的位置
nFlag指出nPosition的解释和新菜单项的状态
对nPosition的解释可取下面值之一:
MF_BYCOMMAND:要求nPosition为已存在的一个菜单项的ID号
MF_BYPOSITION:要求nPosition为已存在的一个菜单项的位置
新菜单项状态可取以下值:
MF_CHECKED:在菜单项前加一个检测标志
MF_DISABLED:使菜单项无效,但菜单项不变灰
MF_GRAYED:使菜单项无效,且菜单项变灰
MF_OWNERDRAW:指定菜单项是用户自绘的项
MF_POPUP:指定菜单项有与之相关联的弹出菜单
MF_SEPARATOR:绘制一条水平分隔线,仅能用于弹出菜单项
MF_STRING:指定菜单项为一个字符串
nIDNewItem指定新菜单项的ID号
lpszNewItem新菜单项的文本
pBmp指向将作为菜单项使用的CBitmap对象
插入时在指定的菜单项前面插入

CMenu::LoadMenu加载一个菜单资源,并将其连接到CMenu对象上

BOOLLoadMenu(LPCTSTRlpszResourceName);
BOOLLoadMenu(UINTnIDResource);
参数:lpszResourceName指向一个以NULL结尾的字符串,其中包含要加载的菜单资源名。
nIDResource指定要加载的菜单资源的菜单ID。
返回值:若菜单资源加载成功,则返回非0值;否则返回0。

CMenu::RemoveMenu删除指定菜单项

BOOLRemoveMenu(UINTnPosition,UINTnFlags);
参数:nPosition指定要删除的菜单项
nFlag指出nPosition的解释,参照InsertMenu()函数
返回值:若成功,返回非0值;否则返回0。

CMenu::TrackPopupMenu在指定位置显示一个弹出式菜单,并跟踪该菜单的选择

BOOLTrackPopupMenu(UINTnFlag,intx,inty,CWnd*pWnd,LPCRECTlpRect=NULL);
参数:nFlags指定屏幕位置标志和鼠标按钮标志;
屏幕位置标志可以是下列值之一:
TPM_CENTERALIGN定位菜单相对于x指定的坐标水平居中;
TPM_LEFTALIGN定位菜单使其左边对齐x指定的坐标;
TPM_RIGHTALIGN定位菜单使其右边对齐x指定的坐标;
鼠标按钮标志可以是下列值之一:
TPM_LEFTBUTTON使弹出菜单在单击鼠标左键时弹出;
TPM_RIGHTBUTTON使弹出菜单在单击鼠标右键时弹出。
x、y弹出式菜单在屏幕中的位置(屏幕坐标);
pWnd指向拥有此菜单的窗口;
lpRect指向一个RECT结构或CRect对象,设定菜单尺寸。

CPen类:封装了Windows图形设备接口(GDI)中的画笔对象
CPen::CreatePen用指定风格、宽度和颜色初始化一个画笔
BOOLCreatePen(intnPenStyle,intnWidth,COLORREFcrColor);
参数:nPenStyle指定画笔的风格,取值如下:
PS_SOLID:实线;
PS_DASH:虚线;
PS_DOT:点线;
PS_DASHDOT:点划线;
PS_DASHDOTDOT:双点划线;
PS_NULL:空画笔;
PS_ENSIDEFRAME:内框线。
nWidth为画笔的宽度,单位为像素;crColor指定画笔的颜色
返回值:若成功,返回非0;否则返回0

CPoint类:操作CPoint和POINT结构
CPoint::CPoint构造一个CPoint对象

CPoint();
CPoint(intinitX,intinitY);
CPoint(POINTinitPt);
CPoint(SIZEinitSize);
CPoint(DWORDdwPoint);
参数:initX初始化CPoint的X成员。initY初始化CPoint的Y成员。
initPt初始化CPoint的一个POINT结构或CPoint对象。
initSize用SIZE结构中的cx和cy初始化CPoint的X成员和Y成员。
dwPoint设置X成员为参数的低位字,Y成员为参数的高位字。
若未给定参数,则X和Y成员不被初始化
CRect类:封装了一个矩形区域及相关操作
CRect::BottomRight求CRect对象的右下角坐标

CPoint&BottomRight();
返回值:对CRect对象右下角点的一个引用

CRect::CenterPoint求CRect对象的中心点
CPointCenterPoint()const;
返回值:CRect对象的中心点坐标

CRect::CopyRect将一个矩形复制到CRect对象中
voidCopyRect(LPCRECTlpScrRect)
参数:lpScrRect指向源矩形的RECT结构或CRect对象
返回值:无

CRect::Height求CRect对象的高度
intHeight()const;
返回值:CRect对象的高度

CRect::PtInRect判断指定点是否在CRect对象的区域内
BOOLPtInRect(POINTpoint)const;
参数:point是一个POINT结构或CPoint对象
返回值:指定点在CRect对象内,返回非0值,否则返回0

CRect::SetRect设置CRect对象的值
voidSetRect(intx1,inty1,intx2,inty2);
参数:x1、y1为左上角坐标,x2、y2为右下角坐标

CRect::Width求CRect对象的宽度
intWidth()const;
返回值:CRect对象的宽度

CRgn类:封装用于操作窗口中的椭圆、多边形或者不规则区域的GDI区域
CRgn::CreateEllipticRg创建一个椭圆区域
BOOLCreateEllipticRg(intx1,inty1,intx2,inty2);
参数:x1、y1该椭圆的限定矩形的左上角的逻辑坐标;
x2、y2该椭圆的限定矩形的右下角的逻辑坐标。
返回值:若成功,返回非0,否则返回0

CRgn::CreatePolygonRgn创建一个多边形区域
BOOLCreatePolygonRgn(LPPOINTlpPoints,intnCount,intnMode);
参数:lpPoints指向一个POINT结构的数组或CPoint对象的数组;nCount是数组中元素个数;nMode指定区域的填充方式,可以为ALTERATE或WINDING
返回值:若成功,返回非0,否则返回0
CSize类:用于表示相对坐标或位置
CSize::CSize构造函数,生成一个CSIZE对象并可以设置初值
CSize();
CSize(intinitCX,intinitCY);
CSize(SIZEinitSize);
CSize(POINTinitPt);
CSize(DWORDdwSize);
参数:可以用不同的方法初始化CSize对象的cx成员和cy成员。
其中dwSize是一个DWORD值,双字中的低位字设置cx成员,高位字设置cy成员

操作符==、!=、+、-、+=、-=

CSpinButtonCtrl类:旋转控件Spin的控制类
CSpinButtonCtrl::GetPos获取旋转控件的当前位置
intGetPos()const;
返回值:当前位置(用低位字表示),若有错误产生,高位字为非0

CSpinButtonCtrl::SetBuddy设置旋转控件的伙伴窗口
CWnd*SetBuddy(CWnd*pWndButton);
参数:pWndButton是一个指向新伙伴窗口的指针
返回值:一个指向以前伙伴窗口的指针

CSpinButtonCtrl::SetPos设置控件的位置
intSetPos(intnPos);
参数:nPos为控件的新位置,该值必须在控件指定的上下限范围内
返回值:以前位置

CSpinButtonCtrl::SetRange设置控件的范围
voidSetRange(intnLower,intnUpper);
参数:nLower、nUpper为该控件的上下限

CStatusBar类:状态栏窗口的基类
CStatusBar::SetPaneInfo为指定窗格设置新的ID,风格和宽度
voidSetPaneInfo(intnIndex,UINTnID,UINTnStyle,intcxWidth);
参数:nIndex窗格索引值,nID窗格新ID值,nStyle窗格的新风格,cxWidth窗格的新宽度。

CStatusBar::SetPaneText为指定窗格设置文本
BOOLSetPaneText(intnIndex,LPCTSTRlpszNewText,BOOLbUpdate=TRUE);
参数:nIndex窗格索引值,lpszNewText新的窗格文本,bUpdate若为TRUE,则设置后窗格将无效
返回值:若成功,返回非0;否则返回0

CString类:处理字符串
CString::Compare比较字符串

intCompare(LPCTSTRlpsz)const;
参数:lpsz用于比较的另一个字符串
返回值:字符串相等,返回0;CString对象小于lpsz,返回-1;否则返回1。

CString::CompareNoCase不区分大小写比较字符串

intCompareNoCase(LPCTSTRlpsz)const;
参数:lpsz用于比较的另一个字符串
返回值:字符串相等,返回0;CString对象小于lpsz,返回-1;否则返回1。

CString::Empty清空字符串,并根据需要释放内存
voidEmpty();

CString::Format格式化一个CString对象
voidFormat(LPCTSTRlpszFormat,...);
参数:lpszFormat格式字符串
功能:用格式化数据定义一个CString对象。这里把整数等其它类型转换为字符串。

CString::GetAt获取串中的指定字符
TCHARGetAt(intnIndex);
参数:nIndex串中以0为基值索引值,不得小于0及大于串长。
返回值:由索引值指定的字符。
说明:该函数常用[]运算符替代。

CString::GetLength求字符串中字节数
intGetLength()const;
返回值:字符串中字节数,该计数值不计NULL结束符

CString::GetBuffer为CString对象申请内部字符缓冲区

LPTSTRGetBuffer(intnMinBufLength);
参数:nMinBufLength指出字符缓冲区的最小大小值
返回值:指向该对象的以NULL结束的字符缓冲区的指针

CString::IsEmpty测试字符串是否为空
BOOLIsEmpty();
返回值:若字符串为空,返回TRUE,否则返回FALSE

CString::Left从串的前面提取子字符串
CStringLeft(intnCount)const;
参数:nCount为提取的字符数
返回值:抽取的子字符串的一个拷贝,可能为空

CString::LoadString从Windows资源中加载一个已存在的CString对象

BOOLLoadString(UINTnID);
参数:nIDWindows字符串资源ID
返回值:若加载资源成功,返回非0;否则返回0
说明:nID标识的字符串最大长度为255个字符

CString::MakeLower将CString对象转换为一个小写字符串

voidMakeLower();

CString::MakeReverse逆向CString对象中字符的次序

voidMakeReverse();

CString::MakeUpper将CString对象转换为一个大写字符串

voidMakeUpper();

CString::Mid提取子字符串
CStringMid(intnFirst,intnCount)const;
参数:nFirst提取的起始位置;nCount提取的字符数,若未指定,则提取字符串的剩余部分
返回值:抽取的子字符串的一个拷贝,可能为空

CString::ReleaseBuffer释放由GetBuffer分配的多余缓冲区

voidReleaseBuffer(intnNewLength=-1);
参数:nNewLength字符串对象的实际长度(不含NULL)
功能:把CString对象的大小设置为nNewLength指示的大小;若nNewLength为-1,则设置为该字符串到NULL为止的长度。

CString::Right从串的后面提取子字符串
CStringRight(intnCount)const;
参数:nCount为提取的字符数
返回值:抽取的子字符串的一个拷贝,可能为空

CString::SetAt设置串中的指定位置的字符
voidSetAt(intnIndex,TCHARch);
参数:nIndex串中以0为基值索引值,不得小于0。ch:写入的字符,不得为'\0'。
说明:若索引值超出字符串的边界,则将扩大字符串。

CStringList类:支持CString对象的列表
列表元素必须通过POSITION值进行访问,POSITION类型的变量是列表的一个键,与索引不同,程序不可操作POSITION值。
CStringList::AddTail将一个元素或元素列表增加到该表表尾
POSITIONAddTail(LPCTSTRnewElement);
POSITIONAddTail(constCString&newElement);
POSITIONAddTail(CStringList*pNewList);
参数:newElement指示增加到列表中的元素;pNewList指向另一个CStringList列表
返回值:插入元素的POSITION值

CStringList::FindIndex获取由索引值指定的元素的位置
POSITIONFindIndex(intnIndex)const;
参数:nIndex要查找的列表元素的索引值(基于0,相当于下标)
返回值:索引值所对应的元素位置,若nIndex过大或为负,则返回NULL

CStringList::GetAt获取给定位置处的元素
CStringGetAt(POSITIONposition);
CString&GetAt(POSITIONposition);
参数:position元素位置
返回值:元素值或元素的引用

CStringList::GetCount求列表中元素个数
intGetCount()const;返回值:列表中元素个数

CStringList::GetHeadPosition获取列表首部元素的位置
POSITIONGetHeadPosition()const;
返回值:表头元素的POSITION值,若列表为空,则返回NULL

CStringList::GetNext获取下一个元素
CStringGetNext(POSITION&rPosition);
CString&GetNext(POSITION&rPosition);
参数:rPosition为上一次访问时的元素位置,当GetNext执行后,被设置为列表下一项的POSITION值。返回值:元素值或元素的引用

CStringList::RemoveAll删除列表中所有元素,并释放关联的内存
voidRemoveAll();


CWinApp类:派生的程序对象的基类
CWinApp::EnableShellOpen允许用户从Windows文件管理器中打开数据文件
voidEnableShellOpen();
说明:通常从InitInstace函数的代码中允许程序在文件管理器中双击文件时打开该数据文件

CWinApp::ParseCommandLine分析命令行中的专用参数和标志
voidParseCommandLine(CCommandLineInfo&rCmdInfo);
参数:rCmdInfo到一个CCommandLineInfo对象的引用

CWinApp::RegisterShellFileTypes用Windows文件管理注册程序所有文档类型
voidRegisterShellFileTypes(BOOLbCompat=FALSE);
CWnd类:提供所有窗口类的基本函数
CWnd::CenterWindow相对于指定窗口的中心定位本窗口

voidCenterWindow(CWnd*pAlternateOwner=NULL);
pAlternateOwner另一个窗口指针,若为NULL,则相对于父窗口定位

CWnd::ClientToScreen将一个点或一个矩形的客户坐标转换为屏幕坐标

voidClientToScreen(LPPOINTlpPoint)const;
voidClientToScreen(LPRECTlpRect)const;
参数:lpPoint指向被转换点的CPoint对象或POINT结构
lpRect指向被转换矩形的CRect对象或RECT结构

CWnd::EnableWindow允许或禁止鼠标和键盘输入

BOOLEnableWindow(BOOLbEnable=TRUE);
参数:bEnable为TRUE,窗口允许鼠标和键盘输入;为FALSE,窗口禁止鼠标和键盘输入。返回值:原先为禁止,返回非0;否则返回0

CWnd::GetCapture获取捕获鼠标的窗口
staticCWnd*PASCALGetCapture();
返回值:捕获鼠标的窗口的指针,任何时刻仅有一个窗口拥有鼠标捕获

CWnd::GetClientRect获取CWnd客户区的尺寸
voidGetClientRect(LPRECTlpRect)const;
参数:lpRect指向接收客户区坐标的RECT结构或CRect对象,其中的left和top成员将为0,right和bottom成员保存该窗口的宽度和高度

CWnd::GetDlgItem获取指向给定控件或子窗口的指针
CWnd*GetDlgItem(intnID)const;
参数:nID为控件或子窗口的ID值。
返回值:指向给定控件或子窗口的指针;

CWnd::GetFocus获取拥有输入焦点的窗口
staticCWnd*PASCALGetFocus();
返回值:拥有输入焦点的窗口的指针,若没有拥有焦点的窗口,返回NULL

CWnd::GetMenu获取该窗口的菜单的指针

CMenu*GetMenu()const;
返回值:若窗口无菜单,返回NULL;否则返回菜单对象的指针

CWnd::GetParent获取父窗口指针

CWnd*GetParent()const;
返回值:若成功,返回指向父窗口的指针;否则返回NULL

CWnd::GetStyle获取窗口的风格

DWORDGetStyle()const;返回值:窗口的风格

CWnd::GetWindowRect获取窗口的屏幕坐标

voidGetWindowRect(LPRECTlpRect)const;
参数:lpRect指向一个CRect对象或RECT结构,用来接收窗口的边界矩形坐标

CWnd::GetWindowText获取窗口的标题文本
intGetWindowText(LPCTSTRlpszStringBuf,intnMaxCount)count;
参数:lpszStringBuf指向接收窗口标题文本的字符串缓冲区,nMaxCount指定可拷贝的最大字符数。返回值:字符串长度

CWnd::Invalidate使CWnd的整个客户区无效
voidInvalidate(BOOLbErase=TRUE);
参数:bErase为TRUE则删除更新区域的背景,为FALSE则不删除背景

CWnd::InvalidateRect使CWnd的客户区中的矩形区域无效
voidInvalidateRect(LPCRECTlpRect,BOOLbErase=TRUE);
参数:lpRect指示添加到更新区域的矩形,bErase为TRUE则删除更新区域的背景,为FALSE则不删除背景

CWnd::MessageBox创建并显示一个提示对话框
intMessageBox(LPCTSTRlpszText,LPCTSTRlpszCaption=NULL,UINTnType=MB_OK);
参数:lpszText指示要显示的字符串;lpszCaption指示提示对话框的标题字符串;nType为弹出提示框的风格,此参数可以为下列标志组中标志的组合。

指定下列标志中的一个来设置消息框中的按钮,标志的含义如下。
MB_ABORTRETRYIGNORE:消息框含有三个按钮:Abort,Retry和Ignore。
MB_OK:消息框含有一个按钮:OK。这是缺省值。
MB_OKCANCEL:消息框含有两个按钮:OK和Cancel。
MB_RETRYCANCEL:消息框含有两个按钮:Retry和Cancel。
MB_YESNO:消息框含有两个按钮:Yes和No。
MB_YESNOCANCEL:消息框含有三个按钮:Yes,No和Cancel。

指定下列标志中的一个来设置消息框中显示的图标:标志的含义如下。
MB_ICONEXCLAMATION:
MB_ICONWARNING:一个惊叹号出现在消息框。
MB_ICONINFORMATION:
MB_ICONASTERISK一个圆圈中小写字母i组成的图标出现在消息框。
MB_ICONOUESTION:一个问题标记图标出现在消息框。
MB_ICONSTOP:
MB_ICONERROR:
MB_ICONHAND:一个停止消息图标出现在消息框。

指定下列标志中的一个来指示缺省的按钮:标志的含义如下。
MB_DEFBUTTON1:第一个按钮为缺省按钮。这是缺省值。
MB_DEFSUTTON2;第二个按钮为缺省按钮。
MB_DEFBUTTON3:第三个按钮为缺省按钮。

返回值:若成功,返回非0;否则返回0

CWnd::ModifyStyle修改窗口风格
BOOLModifyStyle(DWORDdwRemove,DWORDdwAdd,UINTnFlags=0);
参数:dwRemove指定要删除的窗口风格;dwAdd指定要添加的窗口风格;nFlags传递到SetWindowPos的标志,若不调用SetWindowPos,应为0,若不为0,则调用SetWindowPos并重画窗口

CWnd::MoveWindow改变窗口的位置和大小
voidMoveWindow(intx,inty,intnWidth,intnHeight,BOOLbRepaint=TRUE);
voidMoveWindow(LPCRECTlpRect,BOOLbRepaint=TRUE);
参数:x,y为新位置的左上角坐标;nWidth,intnHeight指定窗口新的宽度和高度;bRepaint为TRUE时,重绘窗口,为FALSE不绘制;lpRect指定新的大小和位置的CRect对象或RECT结构

CWnd::ReleaseCapture释放鼠标捕获,让其它窗口可以接收鼠标输入
ReleaseCapture();

CWnd::ScreenToClient将一个点或一个矩形的屏幕坐标转换为客户坐标

voidScreenToClient(LPPOINTlpPoint)const;
voidScreenToClient(LPRECTlpRect)const;
参数:lpPoint指向被转换点的CPoint对象或POINT结构
lpRect指向被转换矩形的CRect对象或RECT结构

CWnd::SetCapture捕获鼠标
CWnd*SetCapture();
返回值:原来捕获鼠标的窗口指针
说明:捕获鼠标后,无论光标位于何处,所有鼠标输入都发送给当前的CWnd对象。

CWnd::SetFocus设置输入焦点
CWnd*SetFocus();
返回值:原来拥有输入焦点的窗口指针,若没有这类窗口,返回NULL

CWnd::SetFont将窗口的字体设置为指定字体
voidSetFont(CFont*pFont,BOOLbRedraw=TRUE)
参数:pFont指向新字体;bRedraw若为TRUE,则重画该CWnd对象

CWnd::SetWindowPos改变窗口的大小、位置和Z次序
BOOLSetWindowPos(constCWnd*pWndInsertAfter,intx,inty,intcx,intcy,UINTnFlags);
参数:pWndInsertAfter用来调整窗口Z次序,一般设为NULL;
x、y:窗口新位置;cx、cy:窗口新宽度和高度;
nFlags常用取值:
SWP_NOZORDER:忽略第一个参数,维持次序;
SWP_NOMOVE:忽略x、y,维持位置不变;
SWP_NOSIZE:忽略cx、cy,维持大小不变;
返回值:若成功,返回非0;否则返回0

CWnd::SetWindowText设置窗口标题,若该窗口为控件,则设置其中的文本
voidSetWindowText(LPCTSTRlpszString);
参数:lpszString指向用作新标题的字符串

CWnd::ShowWindow设置窗口的可见性
BOOLShowWindow(intnCmdShow);
参数:nCmdShow指明如何显示该窗口,取值为下列之一:
SW_HIDE隐藏窗口并将活动性传递给另一窗口;
SW_MINIMIZE最小化窗口并激活系统窗口列表中的顶层窗口;
SW_RESTORE激活并显示窗口,若已最小化或最大化,则恢复其原大小和位置;
SW_SHOW激活窗口并以其当前大小和位置显示窗口;
SW_SHOWMAXIMIZED激活窗口并最大化显示窗口;
SW_SHOWMINIMIZED激活窗口并显示为一个图标;
SW_SHOWMINNOACTIVE将窗口显示为一个图标,当前窗口仍然是活动的;
SW_SHOWNA以当前状态显示窗口,当前窗口仍然是活动的;
SW_SHOWNOACTIVATE以最近大小和位置显示窗口,当前窗口仍然是活动的;
SW_SHOWNORMAL激活并显示窗口,若为最小化或最大化窗口,则恢复原大小和位置
返回值:若该窗口原可见,返回非0;若该窗口原隐藏,返回0

CWnd::UpdateData设置一个对话框的数据或获取有效的对话框数据
BOOLUpdateData(BOOLbSaveAndValidate=TRUE);
参数:bSaveAndValidate为FALSE,设置对话框的数据;为TRUE则获取对话框数据
返回值:若成功,返回非0;否则返回0
CWnd::UpdateWindow若更新区域不空,该成员函数通过发送一条WM_PAINT消息以更新客户区
voidUpdateWindow();


API函数
GetPrivateProfileInt从ini文件中读取整数值

UINTGetPrivateProfileInt(LPCTSTRlpAppName,LPCTSTRlpKeyName,INTnDefault,LPCSTRlpFileName);
lpAppName为段名,lpKeyName为项名,nDefault为找不到该项时返回的默认值,lpFileName为ini文件名
返回值:若成功,返回指定项后的整数值,若该项不存在,返回nDefault的值

GetPrivateProfileString从ini文件中读取字符串

DWORDGetPrivateProfileString(LPCTSTRlpAppName,LPCTSTRlpKeyName,LPCTSTRlpDefault,LPTSTRlpReturnedString,DWORDnSize,LPCTSTRlpFileName);
lpAppName为段名,lpKeyName为项名,lpDefault为找不到该项时返回的默认值,lpReturnedString指向接收结果的字符串缓冲区,nSize为缓冲区长度,lpFileName为ini文件名
执行结果:若成功,lpReturnedString指示的串中为读出的项值,若该项不存在,lpReturnedString中为lpDefault的值

WritePrivateProfileString把字符串写入ini文件

BOOLWritePrivateProfileString(LPCTSTRlpAppName,LPCTSTRlpKeyName,LPCTSTRlpString,LPCTSTRlpFileName);
lpAppName为段名,lpKeyName为项名,lpString为写入的字符串,lpFileName为ini文件名
返回值:若成功,返回true,否则返回false
若写入时,该ini文件不存在,则这个函数会自动建立这个文件,并建立相应的段和项。

分享到:
评论

相关推荐

    Visual C++6.0 API函数操作技巧集之鼠标光标篇

    Visual C++6.0 API函数操作技巧集之鼠标光标篇

    Visual C++6.0 API函数操作技巧集C语言教程

    Visual C++6.0 API函数操作技巧集C语言教程,很详细但绝非菜鸟级可以轻易理解

    Visual C++面向对象与可视化程序设计电子教案--黄维通

    书中涉及Visual C++编程过程中常用的API函数及MFC类,并结合实例对其中的消息处理,API函数结构、各种按纽、编辑框、菜单、滚动条等主要的控件以及光标、图标、位图等资源的应用进行了讲述,而且在实例中对程序代码都做...

    Visual C++6.0 API函数操作技巧集

    本文给大家分享了Visual C++6.0 API函数操作技巧集。

    1Visual C++ 6.0概述

    Visual C++ 6.0提供了对面向对象技术的支持,利用类将与用户界面设计有关的Windows API函数封装起来,通过MFC类库的方式提供给开发人员,大大提高了程序代码的可重用性;Visual C++ 6.0还提供了功能强大的应用程序...

    c++API函数入口点查看软件

    c++API函数入口点查看软件 C生成的API,Dll内部的函数名不改变,但是c++语言编写生成的API,Dll内部的函数名会发生变化,如果直接调用,会报无法找到函数如后点的异常,需通过查看c++API函数名的软件获取改变后的...

    Visual C++2010开发权威指南(共三部分).part1.rar

    第一部分 Visual C++ 2010开发与新特性 第1章 Visual C++ 2010开发环境简介 1 1.1 Visual C++ 2010简介 1 1.2 Visual C++ 2010下载安装指南 1 1.3 Visual C++ 2010主要特点与新特性 3 1.4 Visual C++ 2010开发环境...

    VC API函数库

    VISUAL c++API函数库 VISUAL c++API函数库 VISUAL c++API函数库

    Visual C++ 6.0培训教材.rar

    Visual C++ 6.0是由Microsoft公司推出的基于Windows系统的可视化集成开发... Visual C++ 6.0提供了对面向对象技术的支持,利用类将与用户界面设计有关的Windows API函数封装起来,通过MFC类库的方式提供给开发人员,

    Visual C++ 2005 编程技巧大全光盘

    全书内容涵盖了大量的Visual C++ 2005编程新技术和新理念,包括ToolStrip控件应用、泛型应用、注册表管理、WMI管理规范使用、XML文件处理、多线程处理、程序异常处理、文件压缩及解压缩、文件加密解密、文件访问权限...

    Visual C++ 2005入门经典.part08.rar (整理并添加所有书签)

    Visual C++ 2005入门经典.pdf(整理并添加所有书签) ,看书的时候更方便. 封面 目录 第1章 使用Visual C++ 2005 编程 1.1 .NET Framework 1.2 CLR 1.3 编写C++应用程序 1.4 学习windows编程 1.4.1 学习c++ 1.4.2 C++...

    Visual C++ 2005入门经典.part04.rar (整理并添加所有书签)

    Visual C++ 2005入门经典.pdf(整理并添加所有书签) ,看书的时候更方便. 封面 目录 第1章 使用Visual C++ 2005 编程 1.1 .NET Framework 1.2 CLR 1.3 编写C++应用程序 1.4 学习windows编程 1.4.1 学习c++ 1.4.2 C++...

    Visual C++ 面向对象与可视化程序设计 实验1

    1. 掌握Windows应用程序的基本结构; 2. 使用API函数建立窗口、消息循环,编制窗口函数; 在用户区绘图、输出文本,理解Windows的图形设备接口

    Visual C++ 2005入门经典.part05.rar (整理并添加所有书签)

    Visual C++ 2005入门经典.pdf(整理并添加所有书签) ,看书的时候更方便. 封面 目录 第1章 使用Visual C++ 2005 编程 1.1 .NET Framework 1.2 CLR 1.3 编写C++应用程序 1.4 学习windows编程 1.4.1 学习c++ 1.4.2 C++...

    Visual C++从初学到精通 吕兵 高清PDF带书签

    《Visual C++从初学到精通》由浅入深:逐步展现VistJal c++开发中的核心Wiridows编程机制;重点突出:详细讲解Wiridows编程和数据库开发两个典型方向;实例典型:用52个典型实例讲解VisuJaI c++开发的重点知识;侧重...

    visual c++ 开发宝典 源码

    3.4.2 标准Win32API函数分类 3.5 一个用API编写的Windows程序 3.6 VisualC++应用程序开发框架:MFC 3.6.1 从API到MFC 3.6.2 MFC是一个编程框架 小结 第4章 开始使用MFC类库 4.1 MFC的起源和发展 4.2 MFC整体类库...

    Visual C++开发技术大全 明日科技 高清pdf 分卷1

    本书是一本Visual C++ 6.0综合开发参考手册,书中几乎囊括了使用Visual C++进行程序开发的全部知识,同时在讲解中结合了大量实用而又有代表性的示例和典型应用。全书共分31章,包括认识Visual C++,C++语言基础,C++...

    Visual C++开发技术大全——软件工程师典藏 明日科技 源代码

    本书是一本Visual C++ 6.0综合开发参考手册,书中几乎囊括了使用Visual C++进行程序开发的全部知识,同时在讲解中结合了大量实用而又有代表性的示例和典型应用。全书共分31章,包括认识Visual C++,C++语言基础,C++...

    WIN32 API函数大全(VC++6.0)

    WIN32 API函数大全(VC++6.0)API函数大全 VC++6.0中函数功能的介绍

Global site tag (gtag.js) - Google Analytics