搜档网
当前位置:搜档网 › 常用MFC和API函数

常用MFC和API函数

常用MFC和API函数
常用MFC和API函数

常用MFC和API函数

索引

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,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::GetTextMetrics 检取当前字体的规格

BOOL GetTextMetrics(LPTEXTMETRIC lpMetrics)const;

参数:lpMetrics 指向用于接收字体规格的TEXTMETRIC结构

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

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

CDialog类:所有对话框(模态或非模态)的基类

CDialog::DoModal 激活模态对话框,完成后返回对话框结果

virtual int DoModal();

返回值:若不可创建对话框,返回-1;若错误返回IOABORT;若用户用“确定”按钮退出对话框,返回IDOK,否则返回IDCANCEL或0

CDocument类:提供用户定义的文档类的基本功能

CDocument::CanCloseFrame 在关闭框架窗口之间由框架调用

virtual BOOL CanCloseFrame(CFrameWnd* pFrame);

参数:pFrame 指向连接到该文档上的一个视的框架窗口

CDocument::SetTitle 指定文档的标题

virtual void SetTitle(LPCTSTR lpszTitle);

参数:lpszTitle指向用作文档标题的字符串

CEdit类:是一个用于编辑控件的类

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

void Copy();

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

void Cut();

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

BOOL GetModify()const;

返回值:若控件内容已修改,返回非0值,否则返回0。

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

DWORD GetSel()const;

void GetSel(int& nStartChar,int& nEndChar)const;

参数:nStartChar用于接收当前选择的第一个字符的位置;nEndChar用于接收当前选择后面第一个未选字符的位置。

返回值:低位字和高位字分别是当前选择开始和选择区后第一个未选字符的位置。CEdit::Paste 将数据从剪贴板插入到编辑控件中的当前光标处

void Paste();

CEdit::ReplaceSel 用指定的文本替换编辑控件内选择的文本

void ReplaceSel(LPCTSTR lpszNewText,BOOL bCanUndo=FALSE);

参数:lpszNewText指向替换文本的字符串;bCanUndo为TRUE时,指定该操作可以用Undo()撤销

CEdit::SetLimitText 设置CEdit控件可接收文本的最大字节数

void SetLimitText(UINT nMax);

参数:nMax 新文本限制,按字节计。

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

void SetModify(BOOL bModified=TRUE);

参数:bModified 为TRUE,指示控件已修改,为FALSE,清除修改标志CEdit::SetSel 设置编辑控件中选择的字符

void SetSel(DWORD dwSelection,BOOL bNoScroll=FALSE);

void SetSel(int nStartChar,int nEndChar,BOOL bNoScroll=FALSE);

参数:dwSelection 若低位字为0而高位字为-1,则选择所有文本;若低位为-1,则撤销当前选择;bNoScroll 为FALSE时插入字符滚入视野,否则插入字符不滚入视野;

nStartChar指定选择的起始位置,nEndChar指定选择的终止位置;若nStartChar 为0且nEndChar为-1,选择所有文本;若nStartChar为-1,撤销当前选择CFile类:该类是基本文件类的基类

CFile::Close 关闭文件,使该文件不可用于读写

virtual void Close();

CFile::GetLength 求文件长度(以字节计)

virtual DWORD GetLength()const;

返回值:文件长度

CFile::Open 打开文件

virtual BOOL Open(LPCTSTR lpszFileName,UINT nOpenFlags,CFileException* pError=NULL);

参数:lpszFileName指定打开文件的路径;nOpenFlags 定义文件的共享和存取方式;pError指向一个已有的文件异常对象的指针。

nOpenFlags的常用取值:

CFile::modeCreate 创建一个新文件,若文件已存在,则该文件被清空;CFile::modeRead 用于只读; CFile::modeReadWrite 用于读写;

CFile::modeWrite 用于只写; CFile::modeNoInherit 阻止文件被子进程继承;返回值:若打开成功,返回非0;否则返回0

CFile::Read 从文件中读一段数据到一缓冲区中

virtual UINT Read(void* lpBuf,UINT nCount);

参数:lpBuf指向用户定义的缓冲区;nCount为要从文件中读出的最大字节数

返回值:传输给缓冲区的字节数,可小于nCount所指定的值

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

static void PASCAL Rename(LPCTSTR lpszOldName,LPCTSTR lpszNewName);

参数:lpszOldName 旧路径名

lpszNewName 新路径名

CFile::Remove 删除指定文件(静态函数),不可删除目录

static void PASCAL Remove(LPCTSTR lpszFileName);

参数:lpszFileName指向删除文件的路径名字符串

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

virtual LONG Seek(LONG lOff,UINT nFrom);

参数:lOff 指针移动的字节数,为正时,向后移动,为负时,向前移动

nFrom 指针移动方式,可以是下列值之一:

CFile::begin 将文件指针从文件头移动lOff个字节;

CFile::current 将文件指针从当前位置移动lOff个字节;

CFile::end 将文件指针从文件尾移动lOff个字节;

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

CFile::SeekToEnd 将文件指针设置到文件尾,相当于Seek(0L,CFile::end) DWORD SeekToEnd(); 返回值:文件的字节长度

CFile::Write 将数据从一缓冲区写入文件中

virtual void Write(const void* lpBuf,UINT nCount);

参数:lpBuf指向用户定义的缓冲区;nCount为要从缓冲区传输的字节数CFileDialog类:封装了打开和保存文件的标准对话框

CFileDialog::CFileDialog 构造一个标准Windows文件对话框对象

CFileDialog(BOOL bOpenFileDialog,LPCTSTR lpszDefExt=NULL,LPCTSTR lpszFileName=NULL, DWORD dwFlags=OFN_HIDEREADONLY |

OFN_OVERWRITEPROMPT,LPCTSTR lpszFilter=NULL,CWnd* pParentWnd=NULL);

参数:bOpenFileDialog为TRUE时构造打开文件对话框,为FALSE时构造另存为对话框;

lpszDefExt指定缺省文件扩展名,在对话框弹出后,若没有在文件名框中输入扩展名,则自动附加指定的扩展名,若lpszDefExt为NULL,则不附加扩展名;lpszFileName指定出现在文件名框中的初始文件名,若为NULL,则无初始文件名;dwFlags为定制对话框的标志组合;

lpszFilter指定文件过滤器

CFileDialog::GetFileExt 检取对话框中输入的文件扩展名

CString GetFileExt()const;

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

CString GetFileName()const;

CFileDialog::GetNextPathName 检取对话框中选定的一组文件中的下一个文件的全路径

CString GetNextPathName(POSITION& pos)const;

参数:pos 指定位置的POSITION值,执行后,为下一项的POSITION值;若已到列表尾,执行后为NULL

返回值:文件的全路径

CFileDialog::GetPathName 检取对话框中输入的文件全路径

CString GetPathName()const;

CFileDialog::GetStartPosition 获取列表中第一个文件路径名的位置POSITION GetStartPosition()const;

返回值:列表中第一个文件路径名的POSITION值;若列表为空,返回NULL

说明:用于多选列表,要求m_ofn.Flags设置了OFN_ALLOWMULTISELECT标志CFindReplaceDialog类:封装了标准查找/替换对话框CFindReplaceDialog::Create 创建一个Find或Find/Replace对话框对象BOOL Create(BOOL bFindDialogOnly,LPCTSTR lpszFindWhat,LPCTSTR lpszReplaceWhat=NULL,DWORD dwFlag=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 确定用户是否要查找串的下一个出现处。

BOOL FindNext()const;

返回值:若用户单击查找“下一个”按钮,则返回非0值,否则返回0。CFindReplaceDialog::GetFindString 检取对话框中的查找字符串

CString GetFindString()const;

返回值:对话框中的查找字符串

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

static CFindReplaceDialog* PASCAL GetNotifier(LPARAM lParam);

参数:lParam 传递给回调函数OnFindReplace()的lParam值

返回值:指向当前查找/替换对话框的指针

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

CString GetReplaceString()const;

返回值:对话框中的替换字符串

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

BOOL IsTerminating()const;

返回值:若用户终止对话框,返回非0值,否则返回0 CFindReplaceDialog::MatchCase 检取区分大小写复选按钮状态

BOOL MatchCase()const;

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

BOOL MatchWholeWord()const;

返回值:如果全字匹配复选按钮被选择,返回非0值,否则返回0 CFindReplaceDialog::ReplaceAll 确定用户是否要求全部替换

BOOL ReplaceAll()const;

返回值:如果用户要求全部替换,返回非0值,否则返回0 CFindReplaceDialog::ReplaceCurrent 确定用户是否要求替换当前选择串

BOOL ReplaceCurrent()const;

返回值:如果用户要求替换当前选择串,返回非0值,否则返回0 CFindReplaceDialog::SearchDown 检取查找方向

BOOL SearchDown()const;

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

CFont类:封装了Windows图形设备接口(GDI)中的字体对象

CFont::CreatePointFont 创建指定打印字样和点大小的字体

BOOL CreatePointFont(int nPointSize,LPCTSTR lpszFaceName,CDC*pDC==NULL);

参数:nPointSize请求字体的高度(以十分之一点计);lpszFaceName字体的字样名

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

CFontDialog类:封装了字体选择对话框

CFontDialog::CFontDialog 构造一个CFontDialog对象

CFontDialog(LPLOGFONT lplfInitial=NULL,DWORD dwFlags=CF_EFFECTS |

CF_SCREENFONTS,CDC* pdcPrinter=NULL,CWnd* pParentWnd=NULL);

参数:lplfInitial是一个指向LOGFONT结构的指针;dwFlags一些标志;pdcPrinter指向打印机设备环境的指针;pParentWnd指向该字体对话框的父窗口的指针

CFontDialog::GetFaceName 获取选定的字体名

CString GetFaceName()const;

CFontDialog::GetSize 获取选定的字体大小

int GetSize()const;

CGdiObject类:GDI绘图工具的基类

CGdiObject::DeleteObject 释放与连接的GDI对象相关的所有系统存储,从内存中将其删除

BOOL DeleteObject();

返回值:若GDI对象被成功删除,返回非0;否则返回0

CGdiObject::GetSafeHandle 获取连接的Windows GDI对象的句柄

HGDIOBJ GetSafeHandle()const;

返回值:所连接的Windows GDI对象的句柄,若没有连接Windows GDI对象,则返回NULL

CIPAddressCtrl类:提供了IP地址控件的功能

CIPAddressCtrl::ClearAddress 清除IP地址控件中的内容。

void ClearAddress();

CIPAddressCtrl::Create 创建一个IP地址控件。

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

参数:dwStyle 为控件风格,可使用窗口风格的组合;rect 控件大小和位置;pParentWnd 指向父窗口的指针,不能为NULL;nID 控件的ID。

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

CIPAddressCtrl::GetAddress 获取IP地址控件中的地址值。

int GetAddress(BYTE& nField0,BYTE& nField1,BYTE& nField2,BYTE& nField3); int GetAddress(DWORD& dwAddress);

第一种形式是把IP地址的4个域填充到用4个引用中。

第二种形式是把IP地址填充到1个长整数的引用中。

返回值:IP地址控件中非空域的数量。

CIPAddressCtrl::IsBlank 判断IP地址控件中所有域是否为空。

BOOL IsBlank();

返回值:如果IP地址控件的所有域均为空,返回非0值;否则返回0。CIPAddressCtrl::SetAddress 设置IP地址控件中的地址值。

void SetAddress(BYTE nField0,BYTE nField1,BYTE nField2,BYTE nField3); void SetAddress(DWORD dwAddress);

第一种形式是用4个0~255的整数分别设置IP地址各个域的值。

第二种形式是用1个长整数设置IP地址值。

返回值:无

CIPAddressCtrl::SetFieldFocus 把输入焦点设置在指定的域中。

void SetFieldFocus(WORD nField);

参数:nField 取值为0~3,如果大于3,则焦点设置到第一个空域中,若所有域均非空,则焦点设置在第一个域中。

返回值:无

CIPAddressCtrl::SetFieldRange 设置指定域中数值的取值范围。

void SetFieldRange(int nField,BYTE nLower,BYTE nUpper);

参数:nField 域索引,取值0~3;nLower 域的下限值;nUpper:域的上限值。返回值:无

CImageList类:管理大小相同的图标或位图集

CImageList::Add 在影像列表中添加一个或多个影像或图标

int Add(CBitmap* pbmImage,CBitmap* pbmMark);

参数:pbmImage 指向包含影像位图的指针;pbmMark 指向包含屏蔽位图的指针,若没有屏蔽,此参数被忽略。

返回值:若成功,返回第一个影像的以0为基的索引,否则返回-1。CImageList::Create 构造一个CImageList对象

BOOL Create(int cx,int cy,BOOL bMark,int nInitial,int nGrow);

参数:cx、cy为影像大小,以像素为单位;bMark 若影像包含屏蔽则为TRUE,否则为FALSE;nInitial包含的影像数;nGrow当需要改变列表大小时,允许扩大到的影像数。

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

CMenu类:封装应用程序菜单栏和弹出式菜单

CMenu::DestoryMenu 撤销菜单及所用的Windows资源

BOOL DestoryMenu();

返回值:若菜单撤销成功,则返回非0值;否则返回0。

说明:撤销之前需用Detach()将菜单与CMenu对象断开连接。

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

HMENU Detach();

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

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

CMenu* GetSubMenu(int nPos)const;

参数:nPos 弹出式子菜单在父菜单中的位置,从0开始算起

返回值:若给定位置存在一个弹出式子菜单,返回指向子菜单对象的指针;否则返回NULL。

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

BOOL InsertMenu(UINT nPosition,UINT nFlag,UINT nIDNewItem=0,LPCTSTR lpszNewItem=NULL);

BOOL InsertMenu(UINT nPosition,UINT nFlag,UINT nIDNewItem,const CBitmap* 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对象上

BOOL LoadMenu(LPCTSTR lpszResourceName);

BOOL LoadMenu(UINT nIDResource);

参数:lpszResourceName 指向一个以NULL结尾的字符串,其中包含要加载的菜单资源名。

nIDResource 指定要加载的菜单资源的菜单ID。

返回值:若菜单资源加载成功,则返回非0值;否则返回0。

CMenu::RemoveMenu 删除指定菜单项

BOOL RemoveMenu(UINT nPosition,UINT nFlags);

参数:nPosition 指定要删除的菜单项

nFlag 指出nPosition的解释,参照InsertMenu()函数

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

CMenu::TrackPopupMenu 在指定位置显示一个弹出式菜单,并跟踪该菜单的选择BOOL TrackPopupMenu(UINT nFlag,int x,int y,CWnd* pWnd,LPCRECT

lpRect=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 用指定风格、宽度和颜色初始化一个画笔

BOOL CreatePen(int nPenStyle,int nWidth,COLORREF crColor);

参数: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(int initX,int initY);

CPoint(POINT initPt);

CPoint(SIZE initSize);

CPoint(DWORD dwPoint);

参数: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对象的中心点

CPoint CenterPoint()const;

返回值:CRect对象的中心点坐标

CRect::CopyRect 将一个矩形复制到CRect对象中

void CopyRect(LPCRECT lpScrRect)

参数:lpScrRect 指向源矩形的RECT结构或CRect对象

返回值:无

CRect::Height 求CRect对象的高度

int Height()const;

返回值:CRect对象的高度

CRect::PtInRect 判断指定点是否在CRect对象的区域内

BOOL PtInRect(POINT point)const;

参数:point是一个POINT结构或CPoint对象

返回值:指定点在CRect对象内,返回非0值,否则返回0

CRect::SetRect 设置CRect对象的值

void SetRect(int x1,int y1,int x2, int y2);

参数:x1、y1为左上角坐标,x2、y2为右下角坐标

CRect::Width 求CRect对象的宽度

int Width()const;

返回值:CRect对象的宽度

CRgn类:封装用于操作窗口中的椭圆、多边形或者不规则区域的GDI区域CRgn::CreateEllipticRg 创建一个椭圆区域

BOOL CreateEllipticRg(int x1,int y1,int x2,int y2);

参数:x1、y1 该椭圆的限定矩形的左上角的逻辑坐标;

x2、y2 该椭圆的限定矩形的右下角的逻辑坐标。

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

CRgn::CreatePolygonRgn 创建一个多边形区域

BOOL CreatePolygonRgn(LPPOINT lpPoints,int nCount,int nMode);

参数:lpPoints指向一个POINT结构的数组或CPoint对象的数组;nCount是数组中元素个数;nMode指定区域的填充方式,可以为ALTERATE或WINDING

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

CSize类:用于表示相对坐标或位置

CSize::CSize 构造函数,生成一个CSIZE对象并可以设置初值

CSize();

CSize(int initCX,int initCY);

CSize(SIZE initSize);

CSize(POINT initPt);

CSize(DWORD dwSize);

参数:可以用不同的方法初始化CSize对象的cx成员和cy成员。

其中 dwSize 是一个DWORD值,双字中的低位字设置cx成员,高位字设置cy成员

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

CSpinButtonCtrl类:旋转控件Spin的控制类

CSpinButtonCtrl::GetPos 获取旋转控件的当前位置

int GetPos()const;

返回值:当前位置(用低位字表示),若有错误产生,高位字为非0 CSpinButtonCtrl::SetBuddy 设置旋转控件的伙伴窗口

CWnd* SetBuddy(CWnd* pWndButton);

参数:pWndButton是一个指向新伙伴窗口的指针

返回值:一个指向以前伙伴窗口的指针

CSpinButtonCtrl::SetPos 设置控件的位置

int SetPos(int nPos);

参数:nPos为控件的新位置,该值必须在控件指定的上下限范围内

返回值:以前位置

CSpinButtonCtrl::SetRange 设置控件的范围

void SetRange(int nLower,int nUpper);

参数:nLower、nUpper为该控件的上下限

CStatusBar类:状态栏窗口的基类

CStatusBar::SetPaneInfo 为指定窗格设置新的ID,风格和宽度

void SetPaneInfo(int nIndex,UINT nID,UINT nStyle,int cxWidth);

参数:nIndex 窗格索引值,nID 窗格新ID值,nStyle 窗格的新风格,cxWidth 窗格的新宽度。

CStatusBar::SetPaneText 为指定窗格设置文本

BOOL SetPaneText(int nIndex,LPCTSTR lpszNewText,BOOL bUpdate=TRUE);

参数:nIndex 窗格索引值,lpszNewText 新的窗格文本,bUpdate 若为TRUE,则设置后窗格将无效

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

CString类:处理字符串

CString::Compare 比较字符串

int Compare(LPCTSTR lpsz)const;

参数:lpsz 用于比较的另一个字符串

返回值:字符串相等,返回0;CString对象小于lpsz,返回-1;否则返回1。CString::CompareNoCase 不区分大小写比较字符串

int CompareNoCase(LPCTSTR lpsz)const;

参数:lpsz 用于比较的另一个字符串

返回值:字符串相等,返回0;CString对象小于lpsz,返回-1;否则返回1。CString::Empty 清空字符串,并根据需要释放内存

void Empty();

CString::Format 格式化一个CString对象

void Format(LPCTSTR lpszFormat,...);

参数:lpszFormat 格式字符串

功能:用格式化数据定义一个CString对象。这里把整数等其它类型转换为字符串。

CString::GetAt 获取串中的指定字符

TCHAR GetAt(int nIndex);

参数:nIndex 串中以0为基值索引值,不得小于0及大于串长。

返回值:由索引值指定的字符。

说明:该函数常用[]运算符替代。

CString::GetLength 求字符串中字节数

int GetLength()const;

返回值:字符串中字节数,该计数值不计NULL结束符

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

LPTSTR GetBuffer(int nMinBufLength);

参数:nMinBufLength 指出字符缓冲区的最小大小值

返回值:指向该对象的以NULL结束的字符缓冲区的指针

CString::IsEmpty 测试字符串是否为空

BOOL IsEmpty();

返回值:若字符串为空,返回TRUE,否则返回FALSE

CString::Left 从串的前面提取子字符串

CString Left(int nCount)const;

参数:nCount为提取的字符数

返回值:抽取的子字符串的一个拷贝,可能为空

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

BOOL LoadString(UINT nID);

参数:nID Windows字符串资源ID

返回值:若加载资源成功,返回非0;否则返回0

说明:nID标识的字符串最大长度为255个字符

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

void MakeLower();

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

void MakeReverse();

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

void MakeUpper();

CString::Mid 提取子字符串

CString Mid(int nFirst,int nCount)const;

参数:nFirst提取的起始位置;nCount提取的字符数,若未指定,则提取字符串的剩余部分

返回值:抽取的子字符串的一个拷贝,可能为空

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

void ReleaseBuffer(int nNewLength=-1);

参数:nNewLength 字符串对象的实际长度(不含NULL)

功能:把CString对象的大小设置为nNewLength指示的大小;若nNewLength为-1,则设置为该字符串到NULL为止的长度。

CString::Right 从串的后面提取子字符串

CString Right(int nCount)const;

参数:nCount为提取的字符数

返回值:抽取的子字符串的一个拷贝,可能为空

CString::SetAt 设置串中的指定位置的字符

void SetAt(int nIndex,TCHAR ch);

参数:nIndex 串中以0为基值索引值,不得小于0。 ch:写入的字符,不得为'\0'。

说明:若索引值超出字符串的边界,则将扩大字符串。

CStringList类:支持CString对象的列表

列表元素必须通过POSITION值进行访问,POSITION类型的变量是列表的一个键,与索引不同,程序不可操作POSITION值。

CStringList::AddTail 将一个元素或元素列表增加到该表表尾

POSITION AddTail(LPCTSTR newElement);

POSITION AddTail(const CString& newElement);

04 FunCode C 开发常用API

FunCode C开发常用API C语言标准库函数 在实验中,我们需要用到一些C语言标准库函数,主要用于字符串处理,获得随机值,处理数学函数等。 Math.h 函数原型功能与返回值参数说明与应用举例 public static double atan2( double y, double x );返回两点之间的正 切值 x:点的x坐标 y:点的y坐标 float ftan = atan2((fMouseY-fY),(fMouseX-fX)); float sqrt( float x ); 功能:计算平方根 返回值:x的平方根 sqrt(9) = 3 Stdio.h 函数原型功能与返回值参数说明与应用举例 int sprintf( char *buffer, const char *format, [ argument] … ); 把格式化的数据写 入某个字符串缓冲 区。 返回值:字符串长 度(strlen) buffer:char型指针,指向将要写入的 字符串的缓冲区。 format:char型指针,指向的内存里面 存放的将要格式字符串。 [argument]...:可选参数,可以是任何类 型的数据。 sprintf(szUfoName,"ufo_%d_%d", iLoop, iTotalUfoCount ); String.h 函数原型功能与返回值参数说明与应用举例 extern char *strstr( char *str1, char *str2 );找出str2字符串 在str1字符串中 第一次出现的位置 (不包括str2的 串结束符)。 返回值:返回该位 置的指针,如找不 到,返回空指针。 strstr(szName, “feichong”) != NULL 说明szName中包含feichong 可以用来判断前一个字符串包含后面 一个字符串 extern int strcmp( const char *s1, const char * s2 );比较字符串s1和 s2。 当s1

常用MFC和API函数

常用MFC和API函数 索引 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,UINT nMode,int nBufSize=4096,void* lpBuf=NULL); 参数:pFile 指向CFile对象的指针,这个CFile对象是数据的最终源或目的;nMode是标志,取值为CArchive::load时,从文档中加载数据(要求CFile读许可),取值为CArchive::store时,将数据存入文档(要求CFile写许可);nBufSize 指定内部文件缓冲区的大小(按字节计); lpBuf 指向大小为nBufSize的缓冲区,若未指定,则从局部堆中分配一缓冲区,

常用API函数参数

常用API函数参数5 ImmIsIME 函数功能: 判断指定的句柄是否为IME; 函数原型: BOOL ImmIsIME( HKL hKL ); 参数hKL: 待检查的键盘布局句柄; 返回值: 函数调用成功返回1,失败返回0. 速查信息: Windows NT: 要求4.0或更高版本 Windows: 要求Windows 95 或更高. Windows CE:不支持. Header: 声明在imm.h. Import Library: imm32.lib. Windows XP没有自带五笔型输入法,这对五笔型用户而言无疑是个大大的遗憾。网上的五笔型输入法虽然种类很多,也不乏优秀的版本,但一方面有些版本是共享软件需要注册,另一方面也许很多五笔型输入法的老用户最习惯用的还是老牌的“王码五笔型输入法86/98版”。 微软的Office XP软件中包含了这个老牌的五笔型输入法,但如果用户并不使用Office XP中的任何组件,仅仅是为了使用“王码五笔型输入法”而运行Office XP安装程序,就显的有些小题大做了,更不用说是某些零时在外面用公用电脑而又想用五笔型输入法的情况。于是网上出现了很多简化的安装方法,大体上可以分为三个步骤: 拷贝输入法文件(从Of还是9x/ME。示例代码fice XP光盘中或已经安装了“王码五笔型输入法”的电脑中提取) 增加注册表项 重启后通过控制面板添加输入法

整个过程中拷贝输入法文件和增加注册表项可以用批处理和导入注册表文件来简化操作,但必须重启计算机才能在控制面板里添加输入法,这同样让使用者觉得比较烦琐。那么作为一个编程爱好者能不能通过写个小程序来实现在不重新启动计算机的情况下全自动的安装“王码五笔型输入法”呢(也就是即装即用)?答案是肯定的!因为微软的Office XP 安装程序做到了,这就表示微软肯定留有一个专门用来安装输入法的接口,一般来说应该是一系列API函数。 经过一番摸索,笔者在MSDN里找到了这个可以用来安装输入法的API:ImmInstallIME()。Ok,现在我们就开始利用这个API来实现自己的“王码五笔型输入法”全自动安装程序。 一、准备素材 我们先试着从Office XP光盘中提取“王码五笔型输入法”的输入法文件。通过Windows 的查找功能在Office XP的第一张安装盘中查找与“WINWB”相关的文件,在OFFICE1.CAB 中找到了一下14个文件:WINWB86.CHM.*、https://www.sodocs.net/doc/1717767973.html,T.*、WINWB86.HLP.*、WINWB86A.IME.*、WINWB86A.MB.*、WINWB86W.IME.*、WINWB86W.MB.*、WINWB98.CHM.*、https://www.sodocs.net/doc/1717767973.html,T.*、WINWB98.HLP.*、WINWB98A.IME.*、WINWB98A.MB.*、WINWB98W.IME.*、WINWB98W.MB.*,其中*是很长的一串由字母、数字和下滑线组成的序列(个人认为应该是微软为了校验文件内容的正确性而加上的内容为该文件效验码的后缀吧)。去掉这个长长的后缀,可以看到5 种类型的文件。很明显,*.CHM、*.CNT和*.HLP是五笔型输入法的帮助文件,*.MB是码表文件,而*.IME是主要的输入法文件。其中*.IME和*.MB有文件名部分以A结尾和以W结尾两个版本,经过笔者试验证实了它们分别是ANSI和UNICODE两种版本的输入法文件。文件名部分以A结尾的文件适用于Windows 9x,以W结尾的文件适用于NT系列Windows系统。 提取了输入法文件后必须让安装程序针对不同版本的操作系统将它们拷贝到正确的目录,以便调用API来进行输入法安装。笔者分别在安装了Office XP中自带的“王码五笔型输入法”的Windows 98SE和Windows XP操作系统中查找以上文件,发现帮助文件都存放在WINDOWSHELP目录中(这里假设Windows系统都安装在WINDOWS目录)。而主要的输入法文件(*.IME)和码表文件(*.MB)在Windows 9x下存放于WINDOWSSYSTEM目录中,在NT系列Windows系统中存放于WINDOWSSYSTEM32目录中。 二、相关API函数 素材的准备工作已经完成,现在我们来看一下代码编写过程中需要用到的4个主要的API函数。 2.1 GetVersion 函数原型:

API函数手册

POSTEK PPLⅠAPI函数手册 G Series 条码标签打印机 Version 2.00 深圳市博思得通信发展有限公司 二○○四年

API函数库文件说明 名称:CDFPSK.dll 中文版本编号:1.X.X.X 英文版本编号:2.X.X.X 版权所有:?2004深圳市博思得通信发展有限公司。保留所有权利。 用途 本API函数库为深圳市博思得通信发展有限公司条码标签打印机的用户提供一组命令,为他们编写基于Windows9X,NT,2000,XP等操作系统的应用程序提供便利。 本API函数库仅支持本公司产品。 缩略语对照 PPLⅠ:深圳市博思得通信发展有限公司的第一套打印机编程语言(Printer Porgram Language Ⅰ)。 API:应用程序编程接口(Application Program Interface)。 Dots:像素(pixel)是一种计算机科学技术尺寸单位,原指电视图像成像的最小单位,在打印机领域表示打印机的最小打印成像单位:1dot等于一英寸除以打印机的最大分辨率。 - 对于203DPI的打印机来说, 1dot = 25.4mm/203 = 0.125mm(1dot = 1000 / 203 = 5mil); - 对于300DPI的打印机来说, 1dot = 25.4mm/300 = 0.085mm(1dot = 1000 / 300 = 3mil)。 TrueType Font:是基于Windows操作系统使用,可装卸的字体。 - 已经安装的TrueType Font,都可以被本函数使用。 使用前须知 字符串 * 字符串以双引号(“)作为起始和结束标记; *

API函数大全

? 1. API之网络函数 ? ?WNetAddConnection 创建同一个网络资源的永久性连接 ? ?WNetAddConnection2 创建同一个网络资源的连接 WNetAddConnection3 创建同一个网络资源的连接 WNetCancelConnection 结束一个网络连接 WNetCancelConnection2 结束一个网络连接 WNetCloseEnum 结束一次枚举操作 WNetConnectionDialog 启动一个标准对话框,以便建立同网络资源的连接 WNetDisconnectDialog 启动一个标准对话框,以便断开同网络资源的连接 WNetEnumResource 枚举网络资源 WNetGetConnection 获取本地或已连接的一个资源的网络名称 WNetGetLastError 获取网络错误的扩展错误信息 WNetGetUniversalName 获取网络中一个文件的远程名称以及/或者UNC (统一命名规范)名称 WNetGetUser 获取一个网络资源用以连接的名字 WNetOpenEnum 启动对网络资源进行枚举的过程 ? ? 2. API之消息函数 ?BroadcastSystemMessage 将一条系统消息广播给系统中所有的顶级窗口GetMessagePos 取得消息队列中上一条消息处理完毕时的鼠标指针屏幕位置 GetMessageTime 取得消息队列中上一条消息处理完毕时的时间 PostMessage 将一条消息投递到指定窗口的消息队列 PostThreadMessage 将一条消息投递给应用程序 RegisterWindowMessage 获取分配给一个字串标识符的消息编号 ReplyMessage 答复一个消息 SendMessage 调用一个窗口的窗口函数,将一条消息发给那个窗口 SendMessageCallback 将一条消息发给窗口 SendMessageTimeout 向窗口发送一条消息 SendNotifyMessage 向窗口发送一条消息 ? 3. API之文件处理函数 ?CloseHandle 关闭一个内核对象。其中包括文件、文件映射、进程、线程、安全和同步对象等 CompareFileTime 对比两个文件的时间 CopyFile 复制文件 CreateDirectory 创建一个新目录 CreateFile 打开和创建文件、管道、邮槽、通信服务、设备以及控制台CreateFileMapping 创建一个新的文件映射对象 DeleteFile 删除指定文件 DeviceIoControl 对设备执行指定的操作

api接口文档

API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。API除了有应用“应用程序接口”的意思外,还特指API的说明文档,也称为帮助文档。 API:应用程序接口(API:Application Program Interface) 应用程序接口(是一组定义、程序及协议的集合,通过API 接口实现计算机软件之间的相互通信。API 的一个主要功能是提供通用功能集。程序员通过调用API 函数对应用程序进行开发,可以减轻编程任务。API 同时也是一种中间件,为各种不同平台提供数据共享。 根据单个或分布式平台上不同软件应用程序间的数据共享性能,可以将API 分为四种类型: 远程过程调用(RPC):通过作用在共享数据缓存器上的过程(或任务)实现程序间的通信。 标准查询语言(SQL):是标准的访问数据的查询语言,通过数据库实现应用程序间的数据共享。 文件传输:文件传输通过发送格式化文件实现应用程序间数据共享。

信息交付:指松耦合或紧耦合应用程序间的小型格式化信息,通过程序间的直接通信实现数据共享。 当前应用于API 的标准包括ANSI 标准SQL API。另外还有一些应用于其它类型的标准尚在制定之中。API 可以应用于所有计算机平台和操作系统。这些API 以不同的格式连接数据(如共享数据缓存器、数据库结构、文件框架)。每种数据格式要求以不同的数据命令和参数实现正确的数据通信,但同时也会产生不同类型的错误。因此,除了具备执行数据共享任务所需的知识以外,这些类型的API 还必须解决很多网络参数问题和可能的差错条件,即每个应用程序都必须清楚自身是否有强大的性能支持程序间通信。相反由于这种API 只处理一种信息格式,所以该情形下的信息交付API 只提供较小的命令、网络参数以及差错条件子集。正因为如此,交付API 方式大大降低了系统复杂性,所以当应用程序需要通过多个平台实现数据共享时,采用信息交付API 类型是比较理想的选择。 API 与图形用户接口(GUI)或命令接口有着鲜明的差别:API 接口属于一种操作系统或程序接口,而后两者都属于直接用户接口。 有时公司会将API 作为其公共开放系统。也就是说,公司制定自己的系统接口标准,当需要执行系统整合、自定义和程序应用等操作时,公司所有成员都可以通过该接口标准调用源代码,该接口标准被称之为开放式API。

常用API

转:OpenGL API 简介 开发基于OpenGL的应用程序,必须先了解OpenGL的库函数。它采用C语言风格,提供大量的函数来进行图形的处理和显示。OpenGL库函数的命名方式非常有规律。所有 OpenGL函数采用了以下格式: <库前缀><根命令><可选的参数个数><可选的参数类型> 库前缀有gl、glu、aux、glut、wgl、glx、agl等等,分别表示该函数属于OpenGL那个开发库,从函数名后面中还可以看出需要多少个参数以及参数的类型。I代表int型,f代表float型,d代表double型,u代表无符号整型。例如glVertex3fv()表示了该函数属于gl 库,参数是三个float型参数指针。我们用glVertex*() 来表示这一类函数。 OpenGL函数库相关的API有核心库(gl)、实用库(glu)、辅助库(aux)、实用工具库(glut)、窗口库(glx、agl、wgl)和扩展函数库等。从图可以看出,gl是核心,glu是对gl的部分封装。 glx、agl、wgl 是针对不同窗口系统的函数。glut是为跨平台的OpenGL程序的工具包,比aux功能强大。扩展函数库是硬件厂商为实现硬件更新利用OpenGL的扩展机制开发的函数。下面逐一对这些库进行详细介绍。 1.OpenGL核心库 核心库包含有115个函数,函数名的前缀为gl。这部分函数用于常规的、核心的图形处理。此函数由gl.dll来负责解释执行。由于许多函数可以接收不同数以下几类。据类型的参数,因此派生出来的函数原形多达300多个。核心库中的函数主要可以分为以下几类函数: ?绘制基本几何图元的函数:glBegain()、glEnd()、glNormal*()、glVertex*(); ?矩阵操作、几何变换和投影变换的函数:如矩阵入栈函数glPushMatrix(),矩阵出栈函数glPopMatrix(),装载矩阵函数glLoadMatrix(),矩阵相乘函数glMultMatrix(),当前矩阵函数glMatrixMode()和矩阵标准化函数glLoadIdentity(),几何变换函数glTranslate*()、glRotate*()和glScale*(),投影变换函数glOrtho()、glFrustum()和视口变换函数glViewport();?颜色、光照和材质的函数:如设置颜色模式函数glColor*()、glIndex*(),设置光照效果的函数glLight*() 、glLightModel*()和设置材质效果函数glMaterial(); ?显示列表函数:主要有创建、结束、生成、删除和调用显示列表的函数glNewList()、glEndList()、glGenLists()、glCallList()和glDeleteLists(); ?纹理映射函数:主要有一维纹理函数glTexImage1D()、二维纹理函数glTexImage2D()、设置纹理参数、纹理环境和纹理坐标的函数glTexParameter*()、 glTexEnv*()和glTetCoord*(); ?特殊效果函数:融合函数glBlendFunc()、反走样函数glHint()和雾化效果glFog*();?光栅化、象素操作函数:如象素位置glRasterPos*()、线型宽度glLineWidth()、多边形绘制模式glPolygonMode(),读取象素glReadPixel()、复制象素glCopyPixel(); ?选择与反馈函数:主要有渲染模式glRenderMode()、选择缓冲区glSelectBuffer()和反馈缓冲区glFeedbackBuffer(); ?曲线与曲面的绘制函数:生成曲线或曲面的函数glMap*()、glMapGrid*(),求值器的函数glEvalCoord*() glEvalMesh*(); ?状态设置与查询函数:glGet*()、glEnable()、glGetError()。 2.OpenGL实用库The OpenGL Utility Library (GLU) 包含有43个函数,函数名的前缀为glu。OpenGL提供了强大的但是为数不多的绘图命令,所有较复杂的绘图都必须从点、线、面开始。Glu 为了减轻繁重的编程工作,封装了OpenGL函数,Glu函数通过调用核心库的函数,为开发者提供相对简单的用法,实现

API函数大全

waveInAddBuffer 向波形输入设备添加一个输入缓冲区 WaveInClose 关闭指定的波形输入设置 waveInGetDevCaps 查询指定的波形输入设备以确定其性能 waveInGetErrorText 检取由指定的错误代码标识的文本说明 waveInGetID 获取指定的波形输入设备的标识符 waveInGetNumDevs 返回系统中存在的波形输入设备的数量 waveInGetPosition 检取指定波形输入设备的当前位置 waveInMessage 发送一条消息给波形输入设备的驱动器 waveInOpen 为录音而打开一个波形输入设备 waveInPrepareHeader 为波形输入准备一个输入缓冲区 waveInReset 停止给定的波形输入设备的输入,且将当前位置清零 waveInStart 启动在指定的波形输入设备的输入 waveInStop 停止在指定的波形输入设备上的输入 waveInUnprepareHeader 清除由waveInPrepareHeader函数实现的准备 waveOutBreakLoop 中断给定的波形输出设备上一个循环,并允许播放驱动器列表中的下一个块waveOutClose 关闭指定的波形输出设备 waveOutGetDevCaps 查询一个指定的波形输出设备以确定其性能 waveOutGetErrorText 检取由指定的错误代码标识的文本说明 waveOutGetID 检取指定的波形输出设备的标识符 waveOutGetNumDevs 检取系统中存在的波形输出设备的数量 waveOutGetPitch 查询一个波形输出设备的当前音调设置 waveOutGetPlaybackRate 查询一个波形输出设备当前播放的速度 waveOutGetPosition 检取指定波形输出设备的当前播放位置 waveOutGetV olume 查询指定波形输出设备的当前音量设置 waveOutMessage 发送一条消息给一个波形输出设备的驱动器 waveOutOpen 为播放打开一个波形输出设备 waveOutPause 暂停指定波形输出设备上的播放 waveOutPrepareHeader 为播放准备一个波形缓冲区 waveOutRestart 重新启动一个被暂停的波形输出设备 waveOutSetPitch 设置一个波形输出设备的音调 waveOutSetPlaybackRate 设置指定波形输出设备的速度 waveOutSetV olume 设置指定的波形输出设备的音量 waveOutUnprepareHeader 清除由waveOutPrepareHeader函数实现的准备 waveOutWrite 向指定的波形输出设备发送一个数据块

API函数参考手册

《API函数参考手册》 收集:小红帽 https://www.sodocs.net/doc/1717767973.html, Copyright by vortex 1999.1 ================================================================================= ============== Api函数名函数说明WIN16可用WIN95可用WINNT可用 --------------------------------------------------------------------------------------------------------------- AbortDoc 终止一项打印作业是是是 AbortPath 终止或取消DC中的一切路径否是是 AbortPrinter 删除打印机缓冲文件否是是 AbortSystemShutdowna 停止系统工作否是是 AccessCheck 检验客户访问权限否是是 AccessCheckAndAuditAlarm 检验访问,产生声音或警报否是是 ActivateKeyboardLayout 激活一个新的键盘设备否是是 AddAccessAllowedAce 将ACCESS_ALLOWED_ACE加入ACL 否是是 AddAccessDeniedAce 将ACCESS_DENIED_ACE加入ACL 否是是 AddAce 将ACE加入一个已存在的ACL 否是是 AddAtom 将一个字符串加入本地原子表是是是 AddAuditAccessAce 将SYSTEM_AUDIT_ACE加入ACL 否是是 AddFontResource 将一种字体加入字体表是是是 AddForm 加入一个打印机窗体否是是 AddJob 启动一个打印作业否是是 AddMonitor 加入一个打印机管理器否是是 AddPort 加入一个打印机端口否是是 AddPrintProcessor 将打印处理器复制到打印机服务器中否是是 AddPrintProvidor 加入一个打印机支持器否是是 AddPrinter 在打印机服务器上建立一个打印机否是是 AddPrinterConnection 为当前用户建立与打印机的联系否是是 AddPrinterDriver 将打印机驱动程序复制到打印机服务器中否是是 AdjustTokenGroups 使能/取消令牌中的群否是是 AdjustTokenPrivileges 使能/取消令牌特权否是是 AdjustWindowRect 计算所需窗口矩形的大小是是是 AdjustWindowRectEx 计算所需窗口矩形的大小是是是 AdvancedDocumentProperties 进行打印机高级设置否是是 AllocConsole 为当前进程建立控制台否是是 AllocateAndInitializeSid 分配和初始化SID 否是是 AllocateLocallyUniqueId 分配LUID 否是是 AngleArc 按指定角度画弧否是是 AnimatePalette 替换逻辑调色板中的项目是是是 AnyPopup 标识弹出式窗口是否存在是是是 AppendMenu 在菜单中加入新的项目是是是

Xilkernel API函数介绍

Xilkernel是Xilinx公司提供的用于EDK系统的小型、模块化的操作系统,支持MicroBlaze、PowerPC405以及PowerPC440处理器。支持可移植操作系统接口(POSIX)。 Xilkernel功能函数包括:线程管理、信号量、消息队列、共享内存、互斥锁、动态内存管理、软件定时、用户层中断处理API等几个方面。 ------------------------------------------------------------- 1、线程管理包括如下API函数 Xilkernel支持基本的POSIX线程操作,需要配合线程设置共同作用。使用该类函数需要包含头文件pthread.h。 int pthread_create(pthread_t thread, pthread_attr_t* att, void*(*start_func)(void*),void* param) 参数:thread是存储线程ID的地址,attr存储线程属性结构体的地址, start_func线程函数名,param线程函数参数指针。 返回:0创建成功,-1线程ID无效,EINVAL无效属性,EAGAIN资源不足 创建线程并执行。 void pthread_exit(void *value_ptr) 参数:线程返回值的指针 结束一个线程,但这个函数并不是必须的。需要用到返回值时才使用。 int pthread_join(pthread_t thread, void **value_ptr) 参数:thread线程ID,value_ptr线程返回值地址指针 返回:0成功,ESRCH无效线程,EINVAL线程返回值已经被使用 停止当前线程等待目标线程执行完成并返回值。 pthread_t pthread_self(void) 返回:本线程ID int pthread_detach(pthread_t target) 返回:0成功,ESRCH线程未创建 回收线程存储资源,但并不会结束线程。 int pthread_equal(pthread_t t1, pthread_t t2) 参数:t1和t2两个待比较线程的ID 返回:1两线程是同一线程,0其它情况 int pthread_getschedparam(pthread_t thread, int *policy, struct sched_param *param) 参数:thread线程ID,policy全局调度策略指针,param调度策略结构体地址

外挂编程常用API函数

外挂编程常用API函数 CancelWaitableTimer 这个函数用于取消一个可以等待下去的计时器操作 CallNamedPipe 这个函数由一个希望通过管道通信的一个客户进程调用 ConnectNamedPipe 指示一台服务器等待下去,直至客户机同一个命名管道连接 CreateEvent 创建一个事件对象 CreateMailslot 创建一个邮路。返回的句柄由邮路服务器使用(收件人) CreateMutex 创建一个互斥体(MUTEX) CreateNamedPipe 创建一个命名管道。返回的句柄由管道的服务器端使用 CreatePipe 创建一个匿名管道 CreateProcess 创建一个新进程(比如执行一个程序) CreateSemaphore 创建一个新的信号机 CreateWaitableTimer 创建一个可等待的计时器对象 DisconnectNamedPipe 断开一个客户与一个命名管道的连接 DuplicateHandle 在指出一个现有系统对象当前句柄的情况下,为那个对象创建一个新句柄ExitProcess 中止一个进程 FindCloseChangeNotification 关闭一个改动通知对象 FindExecutable 查找与一个指定文件关联在一起的程序的文件名 FindFirstChangeNotification 创建一个文件通知对象。该对象用于监视文件系统发生的变化FindNextChangeNotification 重设一个文件改变通知对象,令其继续监视下一次变化 FreeLibrary 释放指定的动态链接库 GetCurrentProcess 获取当前进程的一个伪句柄 GetCurrentProcessId 获取当前进程一个唯一的标识符 GetCurrentThread 获取当前线程的一个伪句柄 GetCurrentThreadId 获取当前线程一个唯一的线程标识符 GetExitCodeProces 获取一个已中断进程的退出代码 GetExitCodeThread 获取一个已中止线程的退出代码 GetHandleInformation 获取与一个系统对象句柄有关的信息 GetMailslotInfo 获取与一个邮路有关的信息 GetModuleFileName 获取一个已装载模板的完整路径名称 GetModuleHandle 获取一个应用程序或动态链接库的模块句柄 GetPriorityClass 获取特定进程的优先级别 GetProcessShutdownParameters 调查系统关闭时一个指定的进程相对于其它进程的关闭早迟情况

solidworks二次开发常用API函数命令

SolidWorks2003二次开发基础与实例教程

1. 程序语言 1.1 Visual Basic 1.1.1 VB缺点 ①没有多线程 ②没有实现继承和其他面向对象的特性 ③错误处理能力差 ④与其他语言集成性差 2.文件操作 2.1 保存和退出SW文件 P60 ① ModelDoc2::SaveAs4 作用:用不同的名称保存文件 ② ModelDoc::SaveAs2 作用:用新名称保存文件 ③ SldWorks::ExitApp 2.2 查找文件所参考的其他文件 ModelDoc2::GetDependencies2 2.3 获得与配置有关的结构存储区域 P245 SW文件使用Mocrosoft structured storage(微软结构储存)存储Parasolid 体在各个流中。 Cofiguration::GeteStreamName ModelDoc2::GetConfigurationByName

3.1返回草图对象P72 Feature::GetSpecificFeature 3.2草图对象直接添加到到SW数据库 P109 ① ModelDoc2::SetAddToDB //自动推理功能关闭,即关闭网格和实体自动捕捉 ② ModelDoc2::SetDisplayWhenAdded(False); // 关闭新增实体的实时 显示 ③ ModelDoc2::GraphicsRedraw2 // 重画或刷新文档窗口 ④ ModelDoc2::SetDisplayWhenAdded(True); // 恢复默认显示 3.3获得草图实体的线宽 P110 ① SketchSegment.Width // 工程图才支持草图实体线宽 ② https://www.sodocs.net/doc/1717767973.html,yerOverride // 判断对象是否正在使用默认线宽 3.4检查草图的有效性 P120 Sketch::CheckFeatureUse 3.5获得草图的永久性标识符 P139 SketchSegment::GetID SketchPoint::GetID 注:草图标识由草图名称和草图ID组成 草图的ID是long的有序数对(a,b) 同一个SketchSegment内的每个实体拥有唯一ID 3.6列出草图中的约束 P140 SketchSegment::GetConstraints 3.7控制曲线的精度 Modeler::SetTolerances 3.8修剪曲线来对其边界 P154 Face2.GetTrimCurves2

delphi常用api函数

Delphi 常用API 函数 [delphi] view plaincopyDelphi 常用API 函数AdjustWindowRect 给定一种窗口样式,计算获得目标客户区矩形所需的窗口大小AnyPopup 判断屏幕上是否存在任何弹出式窗口ArrangeIconicWindows 排列一个父窗口的最小化子窗口AttachThreadInput 连接线程输入函数BeginDeferWindowPos 启动构建一系列新窗口位置的过程BringWindowToTop 将指定的窗口带至窗口列表顶部CascadeWindows 以层叠方式排列窗口ChildWindowFromPoint 返回父窗口中包含了指定点的第一个子窗口的句柄ClientToScreen 判断窗口内以客户区坐标表示的一个点的屏幕坐标CloseWindow 最小化指定的窗口CopyRect 矩形内容复制DeferWindowPos 该函数为特定的窗口指定一个新窗口位置DestroyWindow 清除指定的窗口以及它的所有子窗口DrawAnimatedRects 描绘一系列动态矩形EnableWindow 指定的窗口里允许或禁止所有鼠标及键盘输入EndDeferWindowPos 同时更新DeferWindowPos调用时指定的所有窗口的位置及状态EnumChildWindows 为指定的父窗口枚举子窗口EnumThreadWindows 枚举与指定任务相关的窗口EnumWindows 枚举窗口列表中的所有父窗口EqualRect

判断两个矩形结构是否相同FindWindow 寻找窗口列表中第一个符合指定条件的顶级窗口FindWindowEx 在窗口列表中寻找与指定条件相符的第一个子窗口FlashWindow 闪烁显示指定窗口GetActiveWindow 获得活动窗口的句柄GetCapture 获得一个窗口的句柄,这个窗口位于当前输入线程,且拥有鼠标捕获(鼠标活动由它接收)GetClassInfo 取得WNDCLASS结构(或WNDCLASSEX结构)的一个副本,结构中包含了与指定类有关的信息GetClassLong 取得窗口类的一个Long变量条目GetClassName 为指定的窗口取得类名GetClassWord 为窗口类取得一个整数变量GetClientRect 返回指定窗口客户区矩形的大小GetDesktopWindow 获得代表整个屏幕的一个窗口(桌面窗口)句柄GetFocus 获得拥有输入焦点的窗口的句柄GetForegroundWindow 获得前台窗口的句柄GetLastActivePopup 获得在一个给定父窗口中最近激活过的弹出式窗口的句柄GetLastError 针对之前调用的api函数,用这个函数取得扩展错误信息GetParent 判断指定窗口的父窗口GetTopWindow 搜索内部窗口列表,寻找隶属于指定窗口的头一个窗口的句柄GetUpdateRect 获得一个矩形,它描叙了指定窗口中需要更新的那一部分GetWindow 获得一个窗口的句柄,该窗口与某源窗口有特定的关系GetWindowContextHelpId 取得

Java常用API知识测试带答案

Java常用API知识测试带答案 常用API部分测试题 1.String类中的getBytes()方法的作用是(C) A)将整数变成字符串 B)将字符串变成字符数组 C)将字符串变成字节数组 D)获取字符串中字符的个数 2.下列程序的输出结果是(A) class Demo{ publicstaticvoid main(String[]args){ System.out.println("abcd".substring(1,3)); } } A)bc包头不包尾 B)b C)bcd D)abcd 3.对字符串”ababcdabcdefg”使用indexOf(‘a’)和lastIndexOf(‘a’),的运行结果是(B) A)1,1 B)0,6 C)0,0

indexOf从前开始获取,第一位是0 lastIndexOf从后开始获取,但索引还是从前面的第一位0开始4.下面程序的运行结果是什么(A) public static void main(String[]args){ String s1=“abc”; String s2=“xyz”; show(s1,s2); Syst em.out.println(s1+”-----”+s2); } static void show(String s1,String s2){ s1=s2+s1+”Q”; show方法中的s1=“xyzabcQ”但是main函数中s1没有变化. s2=“W”+s1; } String字符串的特性,String应该算是一个特殊的引用类型吧,特殊在它的值不被改变 A)abc-----xyz B)xyzabcQ-----xyzWabc C)xyzabcQ----xyzabcQWabc D)xyzQ----Wabc 5.以下哪个方法可以向StringBuffer对象的指定位置添加数据

Arduino常用函数

(1)pinMode(接口名称,OUTPUT或INPUT),将指定的接口定义为输入或输出接口,用在setup()函数里。 (2)digitalWrite(接口名称,HIGH(高)或LOW(低)),将数字输入输出接口的数值置高或置低。 (3)digitalRead(接口名称),读出数字接口的值,并将该值作为返回值。 (4)analogWrite(接口名称,数值),给一个模拟接口写入模拟值(PWM脉冲)。数值取值0-255。 (5)analogRead(接口名称),从指定的模拟接口读取数值,Arduino对该模拟值进行数字转换,这个方法将输入的0~5V电压值 转换为0~1023间的整数值,并将该整数值作为返回值。 (6)delay(时间),延时一段时间,以毫秒为单位,如1000为1秒。 (7)Serial.begin(波特率),设置串行每秒传输数据的速率(波特率)。在与计算机进行通讯时,可以使用下面这些值:300、1200、2400、4800、9600、14400、19200、28800、38400、57600或115200,一般9600、57600和115200比较常见。除此之外还可以使用其他需要的特定数值,如与0号或1号引脚通信就需要特殊的波特率。该函数用在setup()函数里。 Serial.available() 的意思是:返回串口缓冲区中当前剩余的字符个数。一般用这个函数来判断串口的缓冲区有无数据,当Serial.available()>0时,说明串口接收到了数据,可以读取;

Serial.read()指从串口的缓冲区取出并读取一个Byte的数据,比如有设备通过串口向Arduino发送数据了,我们就可以用Serial.read()来读取发送的数据。 while(Serial.available()>0) { data= Serial.read(); delay(2); } (8)Serial.read(),读取串行端口中持续输入的数据,并将读入的数据作为返回值。 (9)Serial.print(数据,数据的进制),从串行端口输出数据。Serial.print(数据)默认为十进制,相当于Serial.print(数据,十进制)。 (10)Serial.println(数据,数据的进制),从串行端口输出数据,有所不同的是输出数据后跟随一个回车和一个换行符。但是该函数所输出的值与Serial.print()一样。 常用函数 数字I/O类: pinMode(pin,mode)数字IO口输入输出模式定义函数,将接口定义为输入或输出接口。

Win32 API 常用函数

Win32 API 常用函数、消息、结构手册 一、创建和管理窗口的函数和消息: 函数: AdjustWindowRect(LPRECT lprc ,DEORD fdwStyle ,BOOL fMenu )该函数根据所希望的客户矩形大小来计算所要求的窗口矩形大小。然后将该窗口矩形传给CreateWindow函数,以创建一个满足客户区大小的窗口。 参数:lprc :指向一个包含客户矩形坐标的RECT结构。 fdwStyle :指定要计算其所要求的大小的窗口式样。 fMenu :指定此窗口是否有菜单。 返回值:如果函数成功,返回值是TRUE;否则,是FALSE。进一步错误信息,可调用GetLastError函数得到。 AdjustWindowRectEx(LPRECT lprc ,DEORD fdwStyle ,BOOL fMenu ,DWORD fdwExStyle )该函数根据所希望的客户矩形大小来计算具有扩展样式的窗口所需矩形大小。然后将该窗口矩形传给CreateWindow函数,以 创建一个满足客户区大小的窗口。 参数:lprc :指向一个包含客户矩形坐标的RECT结构。 fdwStyle :指定要计算其所要求的大小的窗口式样。 fMenu :指定此窗口是否有菜单。 fdwExStyle :指定要计算其所要求的尺寸的窗口的扩展式样。 返回值:如果函数成功,返回值是TRUE;否则,是FALSE。进一步错误信息,可调用GetLastError函数得到。 ArrangelconicWindows (HWND hwnd)该函数安排给定父窗口的所有最小化(图标化)的子窗口。 参数:hwnd:标示该父窗口。 返回值:如果函数成功,返回值为一图标行的高度;否则为0。进一步错误信息,可调用GetLastError 函数得到。 注释:管理自己的最小化窗口的应用程序可以调用该函数来安排父窗口中的图标。该函数还可以把图标安排在桌面窗口中。可通过使用GetDesktopWindow函数来获取该桌面窗口的窗口句柄。为使 客户窗口安排它自己的图标MDI子窗口,应用程序要给MDI用户窗口发送一个 WM_MDIICONARRANGE消息. BeginDeferWindowPos (int cWindows ) 该函数分配内存来保存一个多窗口位置的数据结构,并为该结构返回一个句柄。 参数:cWindows :为将存储在数据结构中的位置信息指定初始窗口的数目。如果需要,DeferWindowPos 函数将增加该结构的长度。 返回值:如果函数成功,则返回标示该多窗口位置的数据结构句柄;如果系统资源不够分配此结构则返回NULL。进一步错误信息,可调用GetLastError函数得到。 注释:多窗口位置数据结构是一个内部结构;应用程序不能直接访问它。DeferWindowPos函数用待移动窗口的目标位置信息填充该结构。EndDeferWindowPos函数接收该结构的句柄,并根据存放在 该结构中的信息重新为窗口定位。如果此多窗口位置数据结构中的任何窗口设置了 SWP_HIDEWINDOW标志,则所有窗口都不被重定位。如果Windows必须在由cWindows参数指定 的初始大小的基础上增加多窗口位置数据结构的大小,而又不能分配足够的内存来这样做,那 么Windows 使整个窗口定位序列失败。通过指定所需的最大尺寸,应用程序可以尽早检测和处 理失败。 BringWindowToTop (HWND hwnd )该函数将给定的窗口放到Z序的顶部。如果此窗口是一个顶层窗口,则它被激活。如果此窗口是一个子窗口,则与此子窗口相联系的顶层父窗口被激活。 参数:hwnd :标识将放到Z序顶部的窗口。 返回值:如果函数成功,则返回值为TRUE;否则返回FALSE。进一步错误信息,可调用GetLastError函数得到。 注释:调用该函数可露出被其他窗口部分或全部遮住的任何窗口。调用该函数与调用SetWindowPos函数来改变窗口在Z序中的位置类似。BringWindowToTop函数不把窗口变成顶层窗口。 ChildWindowFromPoint (HWND hwndParent ,POINT pt)该函数确定给定的父窗口的哪一个子窗口(如果有)包含了指定的点。

相关主题