当前位置:首页 > 嵌入式软件
[导读]Qt 是一套应用程序开发类库,但与 MFC 不同,Qt 是跨平台的开发类库。Qt 支持 PC 和服务器的平台,包括 Windows、Linux、macOS 等,还支持移动和嵌入式操作系统,如 iOS、Embedded Linux、Android、WinRT 等。

QT是什么?

4.png

Qt 是一套应用程序开发类库,但与 MFC 不同,Qt 是跨平台的开发类库。Qt 支持 PC 和服务器的平台,包括 Windows、Linux、macOS 等,还支持移动和嵌入式操作系统,如 iOS、Embedded Linux、Android、WinRT 等。跨平台意味着只需编写一次程序,在不同平台上无需改动或只需少许改动后再编译,就可以形成在不同平台上运行的版本。这种跨平台功能为开发者提供了极大的便利。

QT界面的建立原理

1. 在函数中setupUI,建立槽的连接;

2. 新建UI过程

(1) 每一个控件都是一个独立的类对象;

(2) 独立的控件都是window窗口,设置parent = 0:

(3) 当parent的值为其他控件的地址,则为子控件;

(4) 子控件不需要单独显示show函数,如果父控件显示,子控件自动显示;

(5) Resize()大小调整

(6) Move()移动位置

(7) Setfront()设置字体;

(8) Setwindowicon()设置图标;在此之前需要先定义qicon i(路径名称)

3. 理解main函数中的return a.exec():主运行循环

(1) 防止主程序结束,重新开始循环执行主程序;

(2) 开启事件队列,并且进行事件分发;

4. 帮助手册解读

(1) 在类的属性中,获取属性函数

① 如果属性是Bool类型,则获取该属性的函数名是前面加上is,部分直接以属性名字命名;

② 如果属性不是Bool类型,则该属性函数名的获取名即为属性名本身;

(2)设置属性加上为set;

5. Widget表示空白窗口,window表示有标题栏的窗口,dialog表示对话框;

6. 函数的自动调用机制

(1) 当操作系统接收到一种信号后,如果QT程序正在运行状态,则QT会接收到这个信号,并且自动调用控件类中已经定义好的函数,

7. eventFilter函数

(1) 定义eventFilter函数(2) 给控件安装eventFilter函数安装;

8. 事件的传递性

(1) 某一种控件除了在某一个控件上发生外,还会传递给父控件;

(2) Eventfileter函数如果返回true,则不会传递,默认return false;

(3) Event->accept()作用相当于返回false,适用于所有event;(4) Event->ignal作用相当于返回true;

9. 实现多个控件的事件触发

(1) 在定义中用qApp来指定所有的控件;

(2) 用notify实现事件的分发,如果需要重新定义notify函数,需要在notify'中returned父类的函数;

10. Postevent函数实现异步事件处理

11. ui中固定界面的大小方法

(1) 直接将maxsize和minsize设置成一致;

(2) 在构造函数中,使用setfixsize( this->width, this->height)来固定大小;

换一批

延伸阅读

[科技喵] 向 Qt 致敬,GOSP v1.1 工具发布

向 Qt 致敬,GOSP v1.1 工具发布

摘要Qt是欧洲人创始的一个优秀的C++开发框架,API简单易用,社区庞大,资源丰富;但Qt太重量级了(需要很多的RAM和ROM,非常复杂)。为了解决这个问题,我开发了GOSP这个框架。GOSP在不依赖Qt的前提下,提供了类似Qt的API接口...

关键字: 开发 QT

[科技前线] Qt 5.15 RC 发布

Qt 5.15 RC 发布

Qt 5.15 首个 RC 版已发布,开发团队表示目前正在为 Qt 5.15 寻求最后的测试,希望用户在试用后能立即反馈错误。此外,团队希望在5月19日左右发布稳定版,同时确认Qt 5.15.1 将在稳定版发布不久之后推出,以修复 5.15...

关键字: QT

[科技前线] 开发者讨论将 Qt 5 代码移植到 Qt 6 的工具

开发者讨论将 Qt 5 代码移植到 Qt 6 的工具

Qt 是一个跨平台的C++图形用户界面应用程序框架。它提供给开发者建立图形用户界面所需的功能,广泛用于开发GUI程序,也可用于开发非GUI程序。Qt是完全面向对象的,很容易扩展,并且允许真正地组件编程。虽然 Qt 作为开源项目的未来还不太清...

关键字: QT

[嵌入式教程] 教你怎么安装linux电脑系统

教你怎么安装linux电脑系统

大家好,今天我在神奇猪的官方网站(mofazhu.com)上分享了一个教程。 Linux系统是类Unix操作系统,具有稳定的系统性能,是开源软件。 有很多Linux发行版,其中一些是完全免费的。 许多公司网络将Linux用作网络服务...

关键字: Linux ip gui

[科技喵] KDE 社区称 Qt 公司正考虑仅面向付费用户提供新版本

KDE 社区称 Qt 公司正考虑仅面向付费用户提供新版本

近日,一封题为 Qt, Open Source and corona 的邮件在 KDE 社区引发了广泛的讨论,其内容主要是指出 Qt 公司正考虑在 Qt 发布新版后的 12 个月内,新版本将限制为仅面向付费客户提供(即不将其作为开源项目发布...

关键字: QT kde

嵌入式软件

15473 篇文章

关注

发布文章

技术子站

关闭