Win32 API应用程序框架结构简

Win32 API应用程序框架结构简

ID:41005913

大小:55.00 KB

页数:9页

时间:2019-08-13

Win32 API应用程序框架结构简_第1页
Win32 API应用程序框架结构简_第2页
Win32 API应用程序框架结构简_第3页
Win32 API应用程序框架结构简_第4页
Win32 API应用程序框架结构简_第5页
资源描述:

《Win32 API应用程序框架结构简》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Win32API应用程序框架结构(2) 1.3.3 头文件的类型与传统的C程序一样,在程序的开始都会包含头文件,并在程序中会有对调用函数的申明。在每一个用C编写的Windows程序中,都会用到一个头文件WINDOWS.H。其实,WINDOWS.H只是一个包含文件,包含了其他的Windows头文件。当然,在这些被包含的头文件中也可能还包含着其他的Windows头文件。这些头文件中最重要的有如下几种。●   WINDEF.H:基本类型的定义。●   WINNT.H:支持Unicode的类型定义。●   WINGDI.H:图形设备接口的定义。●   WINU

2、SER.H:用户接口的定义。●   WINBASE.H:内核函数的定义。●   WINSOCK.H和WINSOCK2.H:用于网络通信的套接字的定义。在这些头文件中,定义了Windows提供的所有数据类型、常数标识符、函数原型和数据结构等,都是Windows文档中最重要的部分。在VisualC++的Include子目录中可以找到所有的头文件。1.3.4 函数和数据结构在C语言中有一个入口函数main,在Windows应用程序中同样也有一个入口函数WinMain,它的原型在WINBASE.H中声明,如下所示:intWINAPIWinMain(HINSTA

3、NCEhInstance,HINSTANCEhPreInstance,LPSTRlpCmdLine,intnShowCmd);其中,第一个参数被称为“实例句柄”,该句柄惟一地标识了该程序,其他Windows函数可以通过将该句柄作为参数来调用该程序;第二个参数只是为了与早期的版本相兼容,在32位Windows程序中,该概念已经不再被采用,所以总是设置为NULL;第三个参数用于运行程序的命令行,可以通过它将文件在程序启动时载入内存;第四个参数表示程序在运行时是以何种方式显示的(从正常、最大化和最小化中选一)。在程序Hello中,除了用到WinMain函数外

4、,还用到了以下的API函数。●   LoadIcon:为程序加载图标以供使用。●   LoadCursor:为程序加载鼠标指针以供使用。●   GetStockObject:获取图形对象。●   RegisterClass:为主程序的窗口注册窗口类。●   ShowWindow:在屏幕上显示窗口。●   UpdateWindow:命令窗口刷新自身。●   GetMessage:从消息队列中获取消息。●   TranslateMessage:转换某些键盘消息。●   DispatchMessage:将消息发送给窗口过程。●   BeginPaint:开始

5、在窗口的客户区绘制。●   GetClientWindow:获得窗口客户区的尺寸。●   SetTextColor:设置文本的颜色。●   DrawText:显示文本串。●   EndPaint:结束绘制。●   InvalidateRect:强制刷新指定的区域,程序Hello刷新整个窗口的客户区。●   PostQuitMessage:在消息队列中插入一条“退出”消息。●   DefWindowProc:执行默认的消息处理。这些函数在头文件WINDOWS.H中都有原型的申明,具体的信息可以查阅MSDN(MicrosoftDeveloperNetwor

6、k)中SDK平台的部分函数说明。除了用到的这些API函数外,还使用了在Windows头文件中定义的4个数据类型:MSG(消息结构)、WNDCLASS(窗口类结构)、PAINTSTRUCT(绘图结构)和RECT(矩形结构)。1.消息结构消息结构定义一个用于发送的消息,其中包含消息的具体信息,在程序接收到消息后,根据其中包含的信息做出相应的处理。其结构声明如下:typedefstructtagMSG{   HWNDhwnd;         //获得消息的窗口句柄   UINTmessage;      //消息标志   WPARAMwParam;    

7、 //消息的附加信息   LPARAMlParam;     //消息的附加信息   DWORDtime;        //消息的发送时间   POINTpt;          //当消息发送时,鼠标所处的屏幕位置}MSG,*PMSG;2.窗口类结构窗口总是在窗口类的基础上创建的,窗口类用来标识处理窗口消息的窗口过程。在一个窗口类的基础上可以创建多个窗口的实例,所以在程序创建窗口之前,必须先调用函数RegisterClass注册一个窗口类。该函数中只带有一个参数,它是一个指向类型为WNDCLASS的结构指针。其结构声明如下:typedefstruc

8、t_WNDCLASS{  UINTstyle;                //  窗口类的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。