Windows编程基础 (2).ppt

上传人:qwe****56 文档编号:70019726 上传时间:2023-01-14 格式:PPT 页数:59 大小:1.28MB
返回 下载 相关 举报
Windows编程基础 (2).ppt_第1页
第1页 / 共59页
Windows编程基础 (2).ppt_第2页
第2页 / 共59页
点击查看更多>>
资源描述

《Windows编程基础 (2).ppt》由会员分享,可在线阅读,更多相关《Windows编程基础 (2).ppt(59页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Windows编程基础知识编程基础知识2学时学时程序设计实践程序设计实践主要内容主要内容1 1 概述概述2 Windows2 Windows编程基础编程基础3 Windows3 Windows程序结构程序结构4 4 动手写第一个动手写第一个WindowsWindows程序程序5 5 小结小结C+实践课22023/1/131.概述概述Windows应用程序应用程序Windows应用程序使用的界面是由各种图形元素应用程序使用的界面是由各种图形元素组成的组成的图形界面(图形界面(GUI)应用程序的用户主要是通过应用程序的用户主要是通过键盘键盘和和鼠标鼠标对应用程对应用程序界面上的图形元素进行操作来与

2、序界面上的图形元素进行操作来与Windows应用应用程序进行程序进行交互交互的的2023/1/13C+实践课31.概述概述使用使用VC+创建交互式创建交互式Windows应用程序应用程序使用使用Windows API 开发应用程序开发应用程序Windows API是Windows操作系统提供给应用程序的编程接口自始至终地编写代码,构成应用程序GUI的所有元素都必须以编程方式创建使用使用MFC 开发应用程序开发应用程序MFC:一组封装了Windows API的C+类在GUI构建方面得到一些帮助,在对话框窗体上以图形方式组合控件,只需要对程序与用户之间的交互进行编程2023/1/13C+实践课41

3、.概述概述创建一个简单的创建一个简单的Windows API 应用程序应用程序有助于理解有助于理解Windows 应用程序的后台工作原理应用程序的后台工作原理有助于我们使用有助于我们使用Visual C+提供的更高级的功能提供的更高级的功能开发应用程序开发应用程序2023/1/13C+实践课52.Windows编程基础编程基础内容内容2.1 窗口与句柄窗口与句柄2.2 Windows程序与操作系统程序与操作系统2.3 事件驱动程序事件驱动程序2.4 Windows消息消息2.5 Windows API2.6 Windows 数据类型数据类型2.7 Windows程序中的符号程序中的符号2023

4、/1/13C+实践课62.1 窗口与句柄窗口与句柄窗口功能窗口功能系统对应用程序系统对应用程序管理的基本单位管理的基本单位应用程序与用户之间应用程序与用户之间交互的接口环境交互的接口环境Window应用程序应用程序基本的操作单元基本的操作单元Windows应用程序编程应用程序编程创建一个或多个窗口创建一个或多个窗口Windows应用程序运行应用程序运行窗口内部、窗口与窗口之间、窗口与系统之间进窗口内部、窗口与窗口之间、窗口与系统之间进行数据处理与交换的过程行数据处理与交换的过程2023/1/13C+实践课72.1 窗口与句柄窗口与句柄窗口窗口 Windows程序界面的主要组成程序界面的主要组成

5、典型窗口及其构成典型窗口及其构成2023/1/13C+实践课8工具栏工具栏窗口边界窗口边界工作区工作区下拉菜单下拉菜单水平滚动条水平滚动条垂直滚动条垂直滚动条最大化按钮最大化按钮最小化按钮最小化按钮标题栏标题栏菜单菜单栏栏2.1 窗口与句柄窗口与句柄典型的窗口最基本的组成部分:典型的窗口最基本的组成部分:边框边框限定了窗口的边界,可以是固定的或可调的标题栏标题栏文本文本(显示窗口的名称)(显示窗口的名称)标题栏图标标题栏图标(位于标题栏左端位于标题栏左端)工作区(客户区)工作区(客户区)窗口中心未被标题栏或边框使用的区域)可选组件可选组件菜单栏、工具栏等菜单栏、工具栏等菜单、对话框、工具栏的图

6、标、光标等,都是由菜单、对话框、工具栏的图标、光标等,都是由资源文件定义的资源文件定义的2023/1/13C+实践课92.1 窗口与句柄窗口与句柄在在Windows应用程序中,应用程序中,窗口窗口是通过是通过窗口句柄窗口句柄(HWND)来标识的来标识的在在Windows程序中有各种各样的对象(资源),程序中有各种各样的对象(资源),例如:窗口、图标、光标等例如:窗口、图标、光标等Windows把为这种复杂对象所定义的标识叫做把为这种复杂对象所定义的标识叫做句柄(句柄(HANDLE),),应用程序通过句柄访问应用程序通过句柄访问相应的对象信息相应的对象信息句柄是一个长度为句柄是一个长度为4字节的

7、整数值字节的整数值2023/1/13C+实践课102.1 窗口与句柄窗口与句柄句柄实际上是句柄实际上是Windows在内存中维护的一个对在内存中维护的一个对象内存物理地址列表的象内存物理地址列表的整数索引整数索引,而不是对象,而不是对象的地址指针的地址指针程序将需要访问对象的句柄传递给系统,系统程序将需要访问对象的句柄传递给系统,系统根据句柄检索对象列表从而获得对象及其物理根据句柄检索对象列表从而获得对象及其物理地址。地址。2023/1/13C+实践课112.1 窗口与句柄窗口与句柄2023/1/13C+实践课12常用常用句柄句柄类型类型HWNDHWND窗口句柄窗口句柄HINSTANCEHIN

8、STANCE 当前实例句柄当前实例句柄HCURSORHCURSOR光标句柄光标句柄HFONTHFONT字体句柄字体句柄HPENHPEN画笔句柄画笔句柄HBRUSHHBRUSH画刷句柄画刷句柄HDCHDC设备环境句柄设备环境句柄HICONHICON图标句柄图标句柄HMENUHMENU菜单句柄菜单句柄HFILEHFILE文件句柄文件句柄 句柄句柄所标识所标识对象实例对象实例w窗口窗口w按钮按钮w图标图标w滚动条滚动条w输出设备输出设备w控件控件w文件文件w程序进程程序进程w等等等等.2.2 Windows程序与程序与操作系统操作系统使用使用Windows 程序时,主要是与程序时,主要是与Windo

9、ws 交交互,然后由互,然后由Windows 与应用程序通信与应用程序通信我们编写的我们编写的Windows程序是在程序是在Windows操作操作系统的控制下运行的,它们不能直接处理硬系统的控制下运行的,它们不能直接处理硬件,与外部的所有通信都必须通过件,与外部的所有通信都必须通过Windows进行。进行。2023/1/13C+实践课132.3 事件驱动事件驱动程序程序传统过程化程序传统过程化程序只有单一执行顺序只有单一执行顺序过程化程序的输入是由程序代码控制的过程化程序的输入是由程序代码控制的而且只能发生在程序允许它发生的时候而且只能发生在程序允许它发生的时候2023/1/13C+实践课14

10、2.3 事件驱动事件驱动程序程序Windows程序是事件驱动的程序是事件驱动的Windows应用程序无法预知将要发生的是什么类应用程序无法预知将要发生的是什么类型的输入型的输入用户动作首先被操作系统接收到,被用户动作首先被操作系统接收到,被Windows认认为是事件为是事件用户界面发生的事件通常将导致执行一段特定程用户界面发生的事件通常将导致执行一段特定程序代码序代码程序的执行过程是由用户的动作序列决定的,程序的执行过程是由用户的动作序列决定的,以这种方式工作的程序为事件驱动程序以这种方式工作的程序为事件驱动程序2023/1/13C+实践课152.3 事件驱动事件驱动程序程序事件由用户动作或事

11、件由用户动作或Windows本身引起的本身引起的事件通常以以下三种方式产生:事件通常以以下三种方式产生:通过输入设备,如键盘和鼠标;通过输入设备,如键盘和鼠标;通通过过屏屏幕幕上上可可视视的的对对象象,如如菜菜单单、工工具具栏栏按按钮钮、滚动条和对话框上的控件;滚动条和对话框上的控件;来来自自Windows内内部部,如如当当一一个个后后面面的的窗窗口口显显示示到到前面来时。前面来时。Windows应用程序主要由响应事件的代码段应用程序主要由响应事件的代码段组成组成2023/1/13C+实践课16事件驱动程序的结构示意图事件驱动程序的结构示意图2023/1/13C+实践课172.4 Window

12、s消息及消息队列消息及消息队列操作系统是怎样将感知到的事件传递给应用程序的操作系统是怎样将感知到的事件传递给应用程序的操作系统是怎样将感知到的事件传递给应用程序的操作系统是怎样将感知到的事件传递给应用程序的呢?呢?呢?呢?通过消息机制通过消息机制通过消息机制通过消息机制(Message)(Message)来实现的来实现的来实现的来实现的Windows操作系统将每个事件记录在一条消息中;操作系统将每个事件记录在一条消息中;将该消息放入目标程序的消息队列中将该消息放入目标程序的消息队列中Windows消息只不过是与某个事件有关的数据记录,消息只不过是与某个事件有关的数据记录,而某个应用程序的消息队

13、列只不过是等待该应用程而某个应用程序的消息队列只不过是等待该应用程序处理的消息序列。序处理的消息序列。2023/1/13C+实践课182.4 Windows消息及消息队列消息及消息队列MSG结构体结构体2023/1/13C+实践课19typedef structtypedef struct tagMSG tagMSG HWND hwnd;HWND hwnd;/窗口句柄 UINT messageUINT message;/消息号,用于区别其他消息的常量值 WPARAM wParam;WPARAM wParam;/消息的附加信息 LPARAM lParam;LPARAM lParam;/消息的附加

14、信息 DWORD time;DWORD time;/消息创建的时间 POINT pt;POINT pt;/消息创建时的屏幕光标位置MSG;MSG;2.4 Windows消息及消息队列消息及消息队列常见的常见的Windows消息消息2023/1/13C+实践课20Windows程序必须包含专门处理这些消息的函程序必须包含专门处理这些消息的函数数该函数经常被称作该函数经常被称作WndProc()或或WindowProc()窗口过程函数窗口过程函数不过该函数不必拥有特定的名称,因为不过该函数不必拥有特定的名称,因为Windows是是通过我们提供的函数指针访问该函数的。通过我们提供的函数指针访问该函数

15、的。2023/1/13C+实践课212.4 Windows消息及消息队列消息及消息队列给程序发送消息归结为给程序发送消息归结为Windows调用我们提供调用我们提供的通常名为的通常名为WindowProc()的函数的函数借助于给该函数传递的实参给程序传递任何必要的借助于给该函数传递的实参给程序传递任何必要的数据。数据。在相应的在相应的WindowProc()函数内,编程人员应当负函数内,编程人员应当负责根据提供的数据,确定消息的意义以及该采取责根据提供的数据,确定消息的意义以及该采取的动作,只需处理必要消息。的动作,只需处理必要消息。通过调用通过调用Windows提供的标准函数提供的标准函数D

16、efWindowProc(),处理默认的消息处理功能。,处理默认的消息处理功能。2023/1/13C+实践课222.4 Windows消息及消息队列消息及消息队列2.5 Windows APIWindows把它所能够完成的功能以函数的形把它所能够完成的功能以函数的形式提供给应用程序使用,这些函数的集合就式提供给应用程序使用,这些函数的集合就是是Windows操作系统提供给应用程序编程的操作系统提供给应用程序编程的接口接口(Application Programming Interface),简简称称Windows API如如CreateWindow就是一个就是一个API函数,应用程序中函数,应

17、用程序中调用这个函数,操作系统就会按照该函数提供的调用这个函数,操作系统就会按照该函数提供的参数信息产生一个相应的窗口。参数信息产生一个相应的窗口。2023/1/13C+实践课232.5 Windows API任何任何Windows应用程序与应用程序与Windows本身之间本身之间的所有通信,都要使用的所有通信,都要使用Windows API根据根据Windows API函数的功能,可以将其分为函数的功能,可以将其分为三类:三类:管管理理函函数数:实实现现窗窗口口和和其其它它对对象象的的创创建建、移移动动和和修改等功能。修改等功能。图图形形设设备备函函数数:实实现现与与设设备备无无关关的的图图

18、形形操操作作功功能能,可以实现图形绘制。可以实现图形绘制。系系统统服服务务函函数数:实实现现与与操操作作系系统统有有关关的的多多种种功功能能,如进程线程管理、任如进程线程管理、任务调度等。务调度等。2023/1/13C+实践课242.6 Windows 数据类型数据类型Windows定义的用在定义的用在Windows API中指定函数的形参类型和中指定函数的形参类型和返回类型的数据类型,包含在返回类型的数据类型,包含在windows.h头文件中。头文件中。2023/1/13C+实践课252.6 Windows程序中的程序中的符号符号在在Windows程序中,变量名的前缀都能够指出该变程序中,变

19、量名的前缀都能够指出该变量容纳的数值类型以及该变量的用法。量容纳的数值类型以及该变量的用法。2023/1/13C+实践课263.Windows3.Windows程序结构程序结构内容内容3.1 概述概述3.2 WinMain()函数函数3.3 窗口过程函数窗口过程函数3.4简单的简单的Windows程序程序2023/1/13C+实践课273.Windows3.Windows程序结构程序结构3.1 概述概述最简单的仅使用最简单的仅使用Windows API的的Windows程序,程序,需要编写两个函数需要编写两个函数WinMain(),程序执行入口,完成基本初始化工作;,程序执行入口,完成基本初始

20、化工作;WindowProc(),由,由Windows调用,处理应用程序的调用,处理应用程序的消息,程序专用代码所在函数。消息,程序专用代码所在函数。这两个函数构成了完整的程序,但相互之间无直这两个函数构成了完整的程序,但相互之间无直接联系,都由接联系,都由Windows调用,如下图所示。调用,如下图所示。2023/1/13C+实践课283.Windows3.Windows程序结构程序结构2023/1/13C+实践课293.2 WinMain()函数函数WinMain()函数等价于控制台程序中的函数等价于控制台程序中的main()函数;函数;该函数是执行开始的地方该函数是执行开始的地方为程序其

21、余部分执行基本初始化工作的地方。为程序其余部分执行基本初始化工作的地方。为了允许为了允许Windows 传递数据,传递数据,WinMain()函数有函数有4 个形参和一个个形参和一个int 类型的返回值类型的返回值当当WinMain函数结束或返回时,函数结束或返回时,Windows应用程应用程序结束序结束2023/1/13C+实践课303.2 WinMain()函数函数原型原型int WINAPI WinMain(HINSTANCE hInstance,/handle to current instance HINSTANCE hPrevInstance,/handle to previous

22、 instance LPSTR lpCmdLine,/command line int nCmdShow /show state);WINAPI是是Windows定义的说明符,将使系统以某种特定义的说明符,将使系统以某种特殊的方式处理函数名和实参;该说明符放在由殊的方式处理函数名和实参;该说明符放在由Windows调用的函数名前面。调用的函数名前面。WinMain函数接收函数接收4个参数,这些参数都是在系统调个参数,这些参数都是在系统调用用WinMain函数时传递给应用程序的函数时传递给应用程序的2023/1/13C+实践课313.2 WinMain()函数函数WinMain()函数的参数函数

23、的参数HINSTANCE hInstance,表示该程序当前运行的程序实例句柄;HINSTANCE hPrevInstance,该参数可以置为NULL;LPSTR lpCmdLine,指向启动程序的命令行字符串的指针;int nCmdShow,决定创建窗口的外观;2023/1/13C+实践课323.2 WinMain()函数函数Windows程序中的程序中的WinMain()函数需要完成函数需要完成窗口的创建窗口的创建消息循环消息循环2023/1/13C+实践课333.2 WinMain()函数函数设计窗口类设计窗口类创建窗口的第一步是定义希望创建的窗口的种类创建窗口的第一步是定义希望创建的窗

24、口的种类Windows定义了结构类型定义了结构类型WNDCLASSEX来指定窗口数据来指定窗口数据2023/1/13C+实践课34WNDCLASS wndcls;wndcls.cbClsExtra=0;wndcls.cbWndExtra=0;wndcls.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);wndcls.hCursor=LoadCursor(NULL,IDC_CROSS);wndcls.hIcon=LoadIcon(NULL,IDI_ERROR);wndcls.hInstance=hInstance;wndcls.lpfnWndP

25、roc=WinMyProc;wndcls.lpszClassName=“MyWnd;wndcls.lpszMenuName=NULL;wndcls.style=CS_HREDRAW|CS_VREDRAW;2023/1/13C+实践课353.2 WinMain()函数函数注册窗口类注册窗口类RegisterClass(&wndcls);创建窗口创建窗口2023/1/13C+实践课363.2 WinMain()函数函数3.2 WinMain()函数函数创建窗口创建窗口 HWND hwnd;hwnd=CreateWindow(MyWnd,MyWindow,WS_OVERLAPPEDWINDOW,0,

26、0,600,400,NULL,NULL,hInstance,NULL);2023/1/13C+实践课373.2 WinMain()函数函数显示及更新窗口显示及更新窗口调用调用ShowWindow函数后,窗口显示在屏幕上函数后,窗口显示在屏幕上ShowWindow(hwnd,SW_SHOWNORMAL);2023/1/13C+实践课383.2 WinMain()函数函数显示及更新窗口显示及更新窗口调用调用UpdateWindow函数,刷新窗口函数,刷新窗口UpdateWindow(hwnd);UpdateWindow函数将发送一个函数将发送一个WM_PAINT消息来消息来刷新窗口刷新窗口2023

27、/1/13C+实践课393.2 WinMain()函数函数消息循环消息循环不断地从消息队列中取出消息,并进行响应不断地从消息队列中取出消息,并进行响应调用调用GetMessage函数从消息队列中取出消息函数从消息队列中取出消息该函数接收到除该函数接收到除WM_QUIT外的消息,均返回非零外的消息,均返回非零值值2023/1/13C+实践课403.2 WinMain()函数函数消息循环消息循环通常编写的消息循环代码如下:通常编写的消息循环代码如下:MSG msg;MSG msg;while(GetMessage(&msg,NULL,0,0)while(GetMessage(&msg,NULL,0

28、,0)TranslateMessage(&msg);TranslateMessage(&msg);DispatchMessage(&msg);DispatchMessage(&msg);TranslateMessageTranslateMessage函数将虚拟键消息转换为字符消息函数将虚拟键消息转换为字符消息DispatchMessageDispatchMessage函数分派一个消息到窗口过程函数,实际上函数分派一个消息到窗口过程函数,实际上是将消息回传给操作系统,由操作系统调用窗口过程函数对是将消息回传给操作系统,由操作系统调用窗口过程函数对消息进行处理(响应)消息进行处理(响应)2023/

29、1/13C+实践课413.2 WinMain()函数函数消息处理机制消息处理机制2023/1/13C+实践课423.3 窗口过程函数窗口过程函数WinMain()函数负责窗口的通用外观。函数负责窗口的通用外观。编写一个窗口过程函数,用于处理发送给窗口的消息编写一个窗口过程函数,用于处理发送给窗口的消息处理处理Windows应用程序的主要代码部分就集中在窗口过程应用程序的主要代码部分就集中在窗口过程函数中函数中2023/1/13C+实践课433.3 窗口过程函数窗口过程函数CALLBACK回调函数回调函数回调函数不是由函数实现方直接调用,而是在特定条件发生回调函数不是由函数实现方直接调用,而是在

30、特定条件发生时由另外一方调用,用于对该条件进行响应时由另外一方调用,用于对该条件进行响应窗口过程函数被调用的过程窗口过程函数被调用的过程2023/1/13C+实践课44在窗口过程函数内部使用在窗口过程函数内部使用switch/case语句来确定窗口语句来确定窗口过程接收的是什么消息,以及如何对这个消息进行处过程接收的是什么消息,以及如何对这个消息进行处理理LRESULT CALLBACK WinMyProc(HWND hwnd,/handle to window UINT uMsg,/message identifier WPARAM wParam,/first message paramet

31、er LPARAM lParam /second message parameter)2023/1/13C+实践课453.3 窗口过程函数窗口过程函数WinMyProc()函数函数switch(uMsg)case WM_CHAR:char szChar20;sprintf(szChar,char is%d,wParam);MessageBox(hwnd,szChar,”Message,0);break;2023/1/13C+实践课46WinMyProc()函数函数 case WM_LBUTTONDOWN:MessageBox(hwnd,mouse clicked,“Message,0);HDC

32、 hdc;hdc=GetDC(hwnd);TextOut(hdc,0,50,”Windows API编程编程”,strlen(Windows API编程编程);ReleaseDC(hwnd,hdc);break;2023/1/13C+实践课47WinMyProc()函数函数case WM_PAINT:HDC hDC;PAINTSTRUCT ps;hDC=BeginPaint(hwnd,&ps);TextOut(hDC,0,0,”我的第一个我的第一个Windows程程序序,strlen(我的第一个我的第一个Windows程程序序);EndPaint(hwnd,&ps);break;2023/1/

33、13C+实践课48WinMyProc()函数函数case WM_CLOSE:if(IDYES=MessageBox(hwnd,”是否真的是否真的结束?结束?”,”Message,MB_YESNO)DestroyWindow(hwnd);break;2023/1/13C+实践课49WinMyProc()函数函数 case WM_DESTROY:PostQuitMessage(0);break;default:return DefWindowProc(hwnd,uMsg,wParam,lParam);return 0;2023/1/13C+实践课503.3 3.3 窗口过程函数窗口过程函数基于基于

34、message值,使用值,使用switch语句。语句。每一种情况对应一个特定的消息每一种情况对应一个特定的消息ID值,并对此进值,并对此进行适当的处理;行适当的处理;程序不想单独处理的任何消息都有程序不想单独处理的任何消息都有default语句处语句处理,默认情况调用理,默认情况调用DefWindowProc()函数,将消函数,将消息回传给息回传给Windows;DefWindowProc()是提供默认消息处理机制的是提供默认消息处理机制的Windows API 函数函数2023/1/13C+实践课51绘制窗口客户区绘制窗口客户区Windows通过给程序发送通过给程序发送WM_PAINT消息,

35、告诉程消息,告诉程序应该重画客户区。序应该重画客户区。在向应用程序窗口写入内容之前,需要告诉在向应用程序窗口写入内容之前,需要告诉Windows我们想这样做,还需要得到我们想这样做,还需要得到Windows的授的授权才能继续;调用权才能继续;调用Windows API函数函数BeginPaint()来来做此事,该函数只应该在响应做此事,该函数只应该在响应WM_PAINT消息时才消息时才被调用。被调用。HDC hDC;/Device context handle PAINTSTRUCT PaintSt;/Structure defining area to be drawn hDC=BeginP

36、aint(hWnd,&PaintSt);/Prepare to draw the window2023/1/13C+实践课52绘制窗口客户区绘制窗口客户区HDC hDC;/Device context handle HDC类型定义显示设备上下文类型定义显示设备上下文-通常称为设备上下文通常称为设备上下文设备上下文设备上下文设备上下文在于设备无关的设备上下文在于设备无关的Windows API函数(向屏幕或函数(向屏幕或打印机输出信息)和设备驱动程序(支持向连接到打印机输出信息)和设备驱动程序(支持向连接到PC的具的具体设备输出信息)之间提供链接。体设备输出信息)之间提供链接。BeginPain

37、t()函数的返回值就是给我们提供的设备上下文。函数的返回值就是给我们提供的设备上下文。2023/1/13C+实践课53绘制窗口客户区绘制窗口客户区通知通知Windows客户区的绘制结束客户区的绘制结束每个每个BeginPaint()函数调用,必须有一个对应的函数调用,必须有一个对应的EndPaint()函数调用;因此,结束对函数调用;因此,结束对WM_PAINT消息的处理,需要语消息的处理,需要语句:句:EndPaint(hWnd,&PaintSt);/Terminate window redraw operation2023/1/13C+实践课54结束程序结束程序关闭窗口时应用程序不会自动关

38、闭,因为可能需要关闭窗口时应用程序不会自动关闭,因为可能需要进行一些清理工作,应用程序也可能有多个窗口;进行一些清理工作,应用程序也可能有多个窗口;当用户双击标题栏图标或单击关闭按钮关闭窗口时,当用户双击标题栏图标或单击关闭按钮关闭窗口时,系统将生成一条系统将生成一条WM_DESTROY消息;消息;为关闭应用程序,需要在为关闭应用程序,需要在WindowProc()函数中处理函数中处理WM_DESTROY消息;可以使用语句消息;可以使用语句PostQuitMessage(0);生成一条生成一条WM_QUIT消息。消息。case WM_DESTROY:/Window is being destr

39、oyed PostQuitMessage(0);return 0;2023/1/13C+实践课553.4 动手写第一个动手写第一个Windows程序程序 2023/1/13C+实践课56创建一个创建一个Win32项目模板的空项目项目模板的空项目编辑源文件编辑源文件5 5 小结小结2023/1/13C+实践课57Windows程序程序的基本组件:的基本组件:WinMain()函函数,负责初始数,负责初始化和设置功能;化和设置功能;WindowProc()函数,负责消函数,负责消息处理任务;息处理任务;关系如右图所关系如右图所示,是示,是Windows程序程序的核心。的核心。5 5 小结小结WinMain()函数是函数是Windows在程序执行开始时调用的;在程序执行开始时调用的;WindowProc()函数函数-有时名为有时名为WndProc(),是操作,是操作系统在有消息传递到应用程序窗口时调用的;通常,系统在有消息传递到应用程序窗口时调用的;通常,每个窗口都有一个单独的每个窗口都有一个单独的WindowProc()函数。函数。2023/1/13C+实践课585.小结小结作业作业2023/1/13C+实践课59

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁