• 003_QT的诞生和本质


    一、 GUI 用户界面元素

    二、 面向对象的 GUI 程序设计

    由于操作系统绝大多数都是用 C 语言开发的,所以操作系统提供的用于开发 GUI 应用程的 SDK 都是 C 函数,也就是说不能将按钮的概念直接映射到某个C函数上面(操作系统提供的原生函数无法直接映射到界面元素)。
    1、面向过程程序设计方法学不适合 GUI 程序设计
    2、面向对象程序设计方法学更适合 GUI 程序设计
    3、所有的界面元素都可以看作实际的对象

    GUI 用户界面是由各不相同的对象组成的
    主窗口对象

    • 菜单对象
    • 按钮对象
    • 文本框对象
    • 。。。

    操作系统提供的只有对应的函数,没有对应的类。因此就需要我们自己来创建对应的 GUI 界面元素类

    三、 面向对象的方法创建 GUI 程序

    1、先从主函数开始看起,可以看出主函数已经是非常短小精悍

    用面向对象的方法看
    在第8行创建了一个应用程序对象a。
    第10行创建了主界面对象w,并且主界面对象的标题为(Main Window)。
    第12行创建了按钮对象b,这个按钮对象b通过第一个参数就和主窗口对象w产生了关联。
    第14行显示主窗口。
    第16行执行消息循环

    2、application类的原型,将 GUI 应用程序里和界面元素无关的部分抽象到application类里面。
    声明

    定义

    3、主窗口类
    声明。MainWindow这个类的protec就是拿来封装以前创建主窗口的哪些步骤

    发现主窗口又继承另一个类(Widget)
    4、Widget类
    声明。这个类用来统一所有的用户界面元素,也就是说所有的用户界面元素里面一些公共的特性全部抽象到(Widget)里

    回到主窗口类的定义


    构造函数用来生成主窗口,生成主窗口对象其实是还是定义主窗口的式样,定义完之后就是创建主窗口
    5、按钮类
    声明

    定义

    创建完后调用主窗口的显示函数就可以显示到屏幕上了,其实本质没有变化,只是开发方法(使用面向对象的方法)发生了变化

    四、 QT 的本质

    1、QT 是利用面向对象方法学开发的一套 GUI 组件库。
    2、QT 将不同操作系统 GUI 细节全都封装于类的内部(在不同的类内部还是调用了操作系统提供的原生的函数来创建 GUI 界面元素,这些细节全部被提供的类所封装了,我们无法看到,所以只需要学会使用 QT 里面的类即可)。
    3、QT 遵循经典的 GUI 应用程序开发模式。那么在使用 QT 开发GUI应用程序时只需要遵循两点即可。第一点:我们要开发的 GUI 应用程序它长得什么样子,需要哪些界面元素对象,通过这些界面元素对象怎样去组合出我们想要的应用程序界面;第二点:我们如何去将用户的操作映射到某一个函数上。

    五、 总结

    1、GUI 应用程序开发更适合采用面向对象方法学,所有的界面元素都可以看作实际的对象。
    2、QT 将 GUI 细节封装于类的内部,具有跨平台的特性(指的是用 QT 库开发的程序可以在不同的平台上编译出对应的 GUI 应用程序)。

  • 相关阅读:
    oracle 11g 断电后 无法启动 ora 00600 kcratr_scan_lastbwr 修复小计
    arcgis for python (arcpy) 入门
    解决 构造函数 包含业务逻辑 IDE无法初始化界面的问题
    arcgis 10.1 发布 气温插值GP服务小计
    执行 Animation先决条件
    ASP.NET MVC3学习心得视图和模型
    Axure使用心得分享
    ASP.NET MVC3学习心得表单和HTML辅助方法
    ASP.NET MVC3学习心得入门和控制器
    WindowsPhone 中SQL CE数据库的使用
  • 原文地址:https://www.cnblogs.com/luosir520/p/11640601.html
Copyright © 2020-2023  润新知