对话框是什么,windows对话框是啥

对话框是什么,windows对话框是啥1、Windows程序开发流程:Windows 程序分为「程序代码」和「UI资源」两大部分,通过RC编译器整合为一个完整的EXE 文件。所谓UI 资源是指功能菜单、对话框外貌、程序图

1、Windows程序开发流程:

Windows 程序分为「程序代码」和「UI资源」两大部分,通过RC编译器整合为一个完整的EXE 文件。

「Windows平台高级工程师」基础入门:win窗口原理

所谓UI 资源是指功能菜单、对话框外貌、程序图标、光标形状等等东西。

这些UI 资源的实际内容(二进制代码)系借助各种工具产生,并以各种扩展名存在,如.ico、.bmp、.cur 等等。程序员必须在一个所谓的资源描述档(.rc)中描述它们。

RC 编译器(RC.EXE)读取RC 档的描述后将所有UI资源档集中制作出一个.RES 档,再与程序代码结合在一起,这才是一个完整的Windows可执行文件。

2、Windows程序与操作系统之间的关系

Windows 程序的进行系依靠外部发生的事件来驱动。换句话说,程序不断等待(利用一个while 回路),等待任何可能的输入,然后做判断,然后再做适当的处理。上述的「输入」是由操作系统捕捉到之后,以消息形式(一种数据结构)进入程序之中。

「Windows平台高级工程师」基础入门:win窗口原理

3、Windows窗口生命周期如下:

1.程序初始化过程中调用CreateWindow,为程序建立了一个窗口,作为程序的屏幕舞台。CreateWindow产生窗口之后会送出 wM_CREATE直接给窗口函数,后者于是可以在此时做些初始化操作(例如配置内存、打开文件、读初始数据……)。

2在程序活着的过程中,不断以 GetMessage从消息队列中抓取消息。如果这个消息是WM_oUIT,GetMessage会传回0而结束while循环,进而结束整个程序。

3.DispatchMessage通过Windows USER模块的协助与监督,把消息分派至窗口函数。消息将在该处被判别并处理。

4.程序不断进行第2步和第3步的操作。

「Windows平台高级工程师」基础入门:win窗口原理

5.当使用者按下系统菜单中的Close命令项时,系统送出WM_CLOSE。通常程序的窗口函数不拦截此消息,于是 DefWindowProc处理它。

6.DefWindowProc收到 WM_CLOSE后,调用 DestroyWindow把窗口清除。Destroy Window本身又会送出WM_DESTROY。

7.程序对WM_DESTROY的标准反应是调用PostQuitMessage。

8.PostQuitMessage没什么其它操作,就只送出 WM_QUIT 消息,准备让消息循环中的GetMessage取得,如步骤2,结束消息循环。

3.Windows窗体原理

Windows的三大核心系统:负责窗口对象产生和消息分发的USER模块,负责图像显示绘制的GDI模块,负责内存、进程、IO管理的KERNEL模块。

试想象一下如何在一个像素阵列上产生窗口对象,其实就是使用GDI绘制窗口,不停的以一定的频率刷新显示在屏幕上,这就是图形界面,如果由在DOS或Windows DOS模拟器下编写图形界面的经验这个比较好理解。所以说其实USER模块中的窗口产生是依靠GDI模块的(包括菜单、滚动条等都是使用GDI来绘制的)。

那么,下面我们就从USER模块和GDI模块来说说Windows 的窗体原理。

如果接触过Win32 SDK编程的知道一个标准Windows窗体的产生过程:

  1. 设计窗口类、
  2. 注册窗口类、
  3. 创建窗口、
  4. 显示窗口、
  5. 启动消息循环泵循环获取消息分发到窗体过程函数处理。

贴上一个标准Windows窗体的产生代码:

#include 

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/102498.html

(0)

相关推荐

  • 人一定要经得起假话,受得起敷衍,忍得住欺骗

    人一定要经得起假话,受得起敷衍,忍得住欺骗41、许多时候,我们不是跌倒在自己的缺陷上,而是跌倒在自己的优势上,因为缺陷常常给我们以提醒,而优势却常常使我们忘乎所以。
    42、多少的包容,不是卑微廉价,而是放不下,深爱的人,

    阅读 2021年9月9日
  • 「开源分享」智能办公OA系统「SpringBoot2-快速开发平台」

    智能办公OA系统[SpringBoot2-快速开发平台],适用于医院,学校,中小型企业等机构的管理。包含文件在线操作、工作日志、多班次考勤、CRM、ERP进销存、项目管理、EHR、拖拽式生成问卷、日程、笔记、工作计划、行政办公、薪资模块、动态表单、知识库、公告模块、企业论坛、云售后模块、生产模块、系统模块化同步模块等多种复杂业务功能。

    科技 2021年11月25日
  • 吃什么最补血,女人贫血吃什么好

    吃什么最补血,女人贫血吃什么好   虽然现在的物质资源很丰富,但是目前女性贫血的数量却在逐年增加。由于当今社会“以瘦为美”的审美标准,很多女性都通过节食、减少热量的摄入,每天只吃蔬菜和水果来控制体重,但是由于饮食的结

    攻略 2021年11月17日
  • 临产要生了,生娃需谨慎

    好不容易熬到了要“卸货”的日子,待产包、老公都打包好了,宝宝也开始发出了TA要降生的信号,车子正平稳的开向医院,一切看起来都准备就绪,除了作为主角的宝妈。

    生活 2021年11月24日
  • 怎么计算孩子的身高,怎么测试孩子长大后的身高

    相信很多家长们想早早的预测一下未来宝宝的身高 心动不如行动,干货献上! 一:遗传靶身高预测法 根据父母的身高,可以预测孩子未来的身高,称为遗传目标身高。 女孩的遗传目标身高=(父亲...

    生活 2021年11月7日
  • directx12下载,directx12旗舰版

    软件标签: DirectX是由Microsoft创建的多媒体编程接口,是一个APP应用接口。 有很多需要DirectX支持的计算机游戏。 不这样做的话,就不能正常工作。 kx提供D...

    阅读 2022年10月25日