欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载
     

    第一讲Windows应用程序基础知识.ppt

    • 资源ID:2610867       资源大小:1.96MB        全文页数:55页
    • 资源格式: PPT        下载积分:8
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要8
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第一讲Windows应用程序基础知识.ppt

    MFC Windows 应用程序设计,第一讲 Windows 应用程序基础知识,第一讲 Windows 应用程序基础知识,Windows是一种应用于微型计算机的操作系统,它为应用程序提供了一个多任务环境,这个环境具有一致的图形化窗口和菜单。在Windows操作系统上运行的应用程序叫做Windows应用程序。,第一讲 Windows 应用程序基础知识,用户操作事件消息调用,WINDOWS 程序工作原理的示意图。,1.1 Windows应用程序的基本概念,第一讲 Windows 应用程序基础知识,Windows应用程序的界面 Windows应用程序与API函数 Windows的一个特殊数据类型句柄 Windows应用程序的数据类型 消息与消息循环,第一讲 Windows 应用程序基础知识,基本概念,Windows应用程序的界面,Windows应用程序的一个突出特点是它有一个美观的图形用户界面(GUI)。这个图形界面是Windows应用程序与用户交换信息的一个“窗口”。简单的Windows应用程序只有一窗口,而复杂的Windows应用程序可能需要多个窗口。因此,设计一个或一组满足要求的窗口,是Windows应用程序设计中的一项重要任务。,第一讲 Windows 应用程序基础知识,基本概念,Windows应用程序与API函数,为了设计Windows应用程序,Windows提供了大量预定义的用C语言编写的函数,这些函数叫做API(Application Programming Interface)函数。API函数几乎包含了Windows程序中所有操作功能。,Visual C+提供两套完整的Windows程序开发系统: 直接使用Windows提供的API 函数; Application Programming Interface 采用面向对象的方式,使用微软基础类库MFC 。 Microsoft Foundation Classes,第一讲 Windows 应用程序基础知识,基本概念,Windows API是Windows 系统和应用程序间的标准接口,为应用程序提供Windows支持的函数定义、参数定义和消息格式等。,标准Win32 API 函数可以分为以下几类:,Windows应用程序与API函数,窗口管理函数窗口的创建、移动及修改; 图形设备函数实现图形的绘制及操作; 系统服务函数实现操作系统有关一些功能。,第一讲 Windows 应用程序基础知识,基本概念,以前用来设计Windows应用程序的开发工具是SDK(Software Development Kit,软件开发工具包),使用SDK来设计Windows应用程序,实际上就是在使用API函数来开发应用程序。 自从出现了面向对象程序设计方法以来,人们用类对Windows API函数进行了封装,从而使用应用程序开发工具发生了巨大的变化。目前,用来设计Windows应用程序的开发工具大多是“面向对象”的而且是“可视的”,如Visual C+、Visaul Basic、Java等。,Windows应用程序与API函数,第一讲 Windows 应用程序基础知识,基本概念,Windows的一个特殊数据类型句柄,在Windows应用程序中,存在着很多诸如窗口、按钮、滚动条等复杂的对象和实例,为了在程序中区分和使用它们,必须对它们进行标识。为了区别于普通变量的标识,Windows把这种复杂对象的标识叫做“句柄”。不同的Windows对象的句柄具有不同的类型。,第一讲 Windows 应用程序基础知识,基本概念,Windows的一个特殊数据类型句柄,Windows对象窗口、图标、光标、菜单及正在运行的应用程序实例等等。 句柄系统用来唯一标识某个Windows对象的一个无符号整数,相当于Windows对象的名字,应用程序只有通过句柄才能使用Windows对象。 应用程序是通过恒定不变的句柄来访问程序中各个对象的。这是多任务操作系统对多个进程进行管理的基本手段。常用的句柄类型见表1-1,第一讲 Windows 应用程序基础知识,基本概念,Windows的一个特殊数据类型句柄,Windows常用句柄类型如下所示:,第一讲 Windows 应用程序基础知识,基本概念,Windows应用程序的数据类型,Windows应用程序中的数据量非常大, 为了提高应用程序的可读性, Windows给许多基本数据类型定义了别名: 例如:typedef unsigned long DWORD,数据类型 说 明 BYTE 8位无符号字符 BSTR 32位字符指针 COLORREF 32位整数,表示一个颜色 WORD 16位无符号整数 LONG 32位有符号整数 DWORD 32位无符号整数 UINT 32位无符号整数 BOOL 布尔值,值为TRUE或FALSE,第一讲 Windows 应用程序基础知识,基本概念,Windows应用程序的数据类型,第一讲 Windows 应用程序基础知识,操作事件消息调用,我们发现有三种类型的消息:窗口、命令( Command )和控件通知(Control Notification),并且这些消息既可以发送( sent ),也可以寄送( post )。,第一讲 Windows 应用程序基础知识,基本概念,消息与消息循环事件与消息,第一讲 Windows 应用程序基础知识,基本概念,消息与消息循环事件与消息,只要有事件发生,系统即产生特定的消息。消息描述了事件的类别,包含了相关信息,Windows应用程序利用消息与系统及其它应用程序进行信息交换。,消息结构的定义如下: typedef struct tagMSG HWND hwnd; /指定消息发向的窗口句柄 UINT message; /消息的标识码 WPARAM wParam; /消息的附加信息1 LPARAM lParam; /消息的附加信息2 DWORD time; /消息进入消息队列的时刻 POINT pt; /表示发送该消息时光标的位置 MSG;,消息结构中各个成员的意义如下: message是标识消息的消息值或消息名。每个消息都有 唯一一个数值标识,常用不同前缀的符号常量以示 区别。例如,WM_表示窗口消息 。,Windows常用的窗口消息和消息值定义于winuser.h中 #define WM_CREATE 0X0001 /创建窗口产生的消息 #define WM_DESTROY 0X0002 /撤销窗口产生的消息 #define WM_PAINT 0X000F /重画窗口产生的消息 #define WM_CLOSE 0X0010 /关闭窗口产生的消息 #define WM_CHAR 0X0102 /按下非系统键产生的字符消息 #define WM_USER 0X0400 /用户自定义消息,第一讲 Windows 应用程序基础知识,消息与消息循环事件与消息,基本概念, wParam,lParam消息参数,均为32位 其数据类型在windef.h中定义如下: typedef UINT WPARAM; typedef LONG LPARAM;, pt表示消息进入消息队列时鼠标指针的屏幕坐标,数据类型POINT是定义在windef.h中的结构体,表示屏幕上一点,定义如下: typedef struct tagPOINT LONG x; /表示点的屏幕横坐标 LONG y; /表示点的屏幕纵坐标 POINT, PPOINT,NEAR *NPPOINT,FAR *LPPOINT;,第一讲 Windows 应用程序基础知识,消息与消息循环事件与消息,基本概念,第一讲 Windows 应用程序基础知识,消息与消息循环事件与消息,基本概念,第一讲 Windows 应用程序基础知识,基本概念,消息与消息循环消息循环,由于windows事件的发生的是随机的,程序的执行先后顺序也无法预测,系统采用消息队列来存放事件发生的消息,然后从消息队列中依次取出消息进行相应的处理。,send,消息泵,第一讲 Windows 应用程序基础知识,基本概念,消息与消息循环消息循环,应用程序为了取得消息队列中的消息,需要调用Windows提供的一个API函数GetMessage,并利用这个函数的返回值组织一个循环来不断获取消息,一旦获取到消息,就这把个消息派送给系统。这个循环叫做消息循环,在Windows应用程序中,消息循环的代码如下: while(GetMessage( ,第一讲 Windows 应用程序基础知识,基本概念,第一讲 Windows 应用程序基础知识,基本概念,第一讲 Windows 应用程序基础知识,第一讲 Windows 应用程序基础知识,1.2 Windows应用程序的结构,主函数 消息的处理部分窗口函数,理解Windows系统、主函数、窗口函数之间的关系,对于编写windows 程序的程序员来讲,是极为重要的。主函数和窗口函数都是windows系统来调用的函数。, 程序启动之后,系统首先调用的主函数,而窗口函数是主函数获得消息并把消息发给系统后,由系统调用的函数。, 不同的消息所对应的操作就是由窗口函数完成的。,第一讲 Windows 应用程序基础知识,应用程序结构,主函数,为了与DOS C程序的主函数名称相区分,Windows应用程序的主函数名称为WinMain。主函数主要完成两个任务: 创建应用程序的界面窗口; 建立前面提到过的消息循环。 创建应用程序窗口要用到4个API函数(描述窗口属性的数据结构窗口类、注册窗口类、创建窗口、显示窗口); 建立消息循环要用到3个API函数(GetMessage、Translate、DispatchMessage)。,第一讲 Windows 应用程序基础知识,Windows应用程序的主函数名称为WinMain。,创建应用程序窗口要用到4个API函数,注册窗口类、创建窗口、显示窗口,更新窗口);,建立消息循环要用到3个API函数(GetMessage、Translate、DispatchMessage)。,应用程序结构,第一讲 Windows 应用程序基础知识,应用程序结构,主函数,TranslateMessage函数功能:该函数将虚拟键消息转换为字符消息。字符消息被寄送到调用线程的消息队列里,当下一次线程调用函数GetMessage或PeekMessage时被读出。,DispatchMessage函数功能:该函数调度一个消息给窗口程序。通常调度从GetMessage取得的消息。,GetMessage函数功能:该函数从调用线程的消息队列里取得一个消息并将其放于指定的结构(&message)。此函数可取得与指定窗口联系的消息和由PostThreadMesssge寄送的线程消息。,消息的处理部分窗口函数,第一讲 Windows 应用程序基础知识,应用程序结构,具有窗口界面的Windows应用程序,必须要有一个“窗口函数”,各种消息的处理就是在这里完成的,它是完成用户任务的核心。 不同的消息所对应的操作就是由窗口函数完成的, windows程序员的工作,就是编写窗口函数的case代码。,第一讲 Windows 应用程序基础知识,第一讲 Windows 应用程序基础知识,第一讲 Windows 应用程序基础知识,第一讲 Windows 应用程序基础知识,第一讲 Windows 应用程序基础知识,第一讲 Windows 应用程序基础知识,第一讲 Windows 应用程序基础知识,实例分析,例11:当鼠标左键单击窗口的用户用户约时,发出“叮”声,第一讲 Windows 应用程序基础知识,实例分析,例11:当鼠标左键单击窗口的用户用户约时,发出“叮”声,第一讲 Windows 应用程序基础知识,实例分析,例11:当鼠标左键单击窗口的用户用户约时,发出“叮”声,第一讲 Windows 应用程序基础知识,实例分析,例11:当鼠标左键单击窗口的用户用户约时,发出“叮”声,由系统自动生成。,由此开始添加代码,第一讲 Windows 应用程序基础知识,Windows应用程序的主函数名称为WinMain。,创建应用程序窗口要用到4个API函数,注册窗口类、创建窗口、显示窗口,更新窗口);,建立消息循环要用到3个API函数(GetMessage、Translate、DispatchMessage)。,应用程序结构,例11:当鼠标左键单击窗口的用户用户约时,发出“叮”声,例11:当鼠标左键单击窗口的用户区时,发出“叮”声,例11:当鼠标左键单击窗口的用户区时约时,发出“叮”声,第一讲 Windows 应用程序基础知识,例1-2 :当鼠标左键单击窗口的用户区时,显示一个字符串“Hello !”,实例分析,Hello!,用C函数封装的Windows程序.,第一讲 Windows 应用程序基础知识,例1-2 :用C函数封装的Windows程序,当鼠标左键单击窗口的用户用户区时,显示一个字符串“Hello !”,实例分析,例1-2 :当鼠标左键单击窗口的用户用户区时,显示 “Hello !”,例1-2 :当鼠标左键单击窗口的用户用户区时,显示 “Hello !”,第一讲 Windows 应用程序基础知识,小结:,Windows应用程序是靠消息驱动的。消息是描述事件的结构。 Windows应用程序的主函数主要完成两个任务: 创建应用程序的窗口、建立消息循环。在消息循环中,程序不断的获得消息并将消息派送给对应的窗口函数进行处理。 窗口函数是处理事件的地方,它为switch-case结构,每一个case结构对就一个消息响应代码。 用函数对windows应用程序封装可以使程序的结构更为清晰。,

    注意事项

    本文(第一讲Windows应用程序基础知识.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开