QT——开发入门简介

QT——开发入门简介1、你了解Qt吗?Qt是一种基于C++的跨平台图形用户界面应用程序开发框架。如何跨平台?上到服务器上位机,下到嵌入式GUI,上天入地无所不能。Qt最早是由1991年由QtCompany开发,但是到2008年,QtCompany科技被诺基亚公司收购,是的,就是拥有着我们很多情怀的诺基亚。但在2012年,Qt又被Digia收购。等到了2014年,跨平台集成开发环境QtCreator3.1….

大家好,又见面了,我是你们的朋友全栈君。

【系列专栏】:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来!

QT开发实战

嵌入式通用开发实战

嵌入式Linux开发实战

1、你了解Qt吗?

Qt是一种基于C++的跨平台图形用户界面应用程序开发框架。如何跨平台?上到服务器上位机,下到嵌入式GUI,上天入地无所不能。Qt最早是由1991年由Qt Company开发,但是到2008年,Qt Company科技被诺基亚公司收购,是的,就是拥有着我们很多情怀的诺基亚。但在2012年,Qt又被Digia收购。等到了2014年,跨平台集成开发环境Qt Creator 3.1.0正式发布出来,至此,全面支持iOSAndroid、WP,QT的时代开始逐步展开。

QT——开发入门简介

而对于嵌入式开发的我们所使用的Qt,是 Qt 的 Embedded Linux 分支平台,在原始 Qt 的基础上,做了许多出色的调整以适合嵌入式环境。删除掉了一些与嵌入式无关的Lib库,使其相对来说更加节省嵌入式平台的内存空间。

2、Qt如何开发呢?

 

开发要用到的东西:Qt源代码+交叉编译器+一个灵活有创造性的大脑。

编译步骤,如下图所示:

QT——开发入门简介

使用交叉编译器编译好的Qt库要在LINUX虚拟机和嵌入式开发板上各一份,有了这个库,我们就可以在上面尽情的编写Qt程序了!(如果需要触摸功能,记得要移植一个开源程序tslib,它相当于底层驱动和上层应用的皇家接口,有效的处理防抖误操作等触摸问题,有机会下次介绍)。

Qt程序可以自己直接编写,出口成章。也可以依托于一个神器!这个神器的名字就是——集成开发环境 Qt Creator,如下图。

QT——开发入门简介

Qt Creator 是一个强大的跨平台 IDE,集编辑、 编译、 运行、 调试功能于一体。它不仅有简洁方便的开发界面,同时支持图形化编程。相当于有了它,即使你不会写程序,也可以通过控件的拖拽排布,设计出一个自己喜欢的图形界面。

3、如何编译呢?

程序搞定了,那我们如何编译呢?

有多种方式:

第一,直接使用Qt qmake工具编译;

第二,使用Qt Creator软件直接编译;

第三,市场上的一些第三方编译工具。

编译过程,话不多说,直接看下图,清晰明了:

QT——开发入门简介

4、重要知识点

当然,关于Qt开发,还有很多重要的知识点,你必须要知道!这里我主要讲两个。

1)布局管理器

如果你写过基于ARM开发的eMWIN,你一定知道我安放控件时,只需要创建一个控件,把他的颜色、形状、大小、位置全都使用参数配置好就万事大吉了。但是Qt不是这么玩的。

它有三大法器,让它的控件布局不会因为平台改变而扭曲。那就是三种布局管理器,这是能够对窗口部件的尺寸大小和位置进行设置的对象。

QHBoxLayout:在水平方向排列窗口部件,从左到右;

QVBoxLayout:在垂直方向排列窗口部件,从上到下;

QGridLayout:把各个窗口部件排列在一个网格中。

这三个布局管理器可以各种嵌套组合,水乳交融,组合成各种复杂的布局层次。

2) 信号与槽

此外,在Qt海洋里,控件与控件之间,控件与嵌入式板卡之间是如何通信的呢,如何团结合作一同创造复杂的信号通信网络呢?这就要说到第二个知识点——信号与槽。

控件与控件之前可以通过信号与槽的函数格式,将两个信号共通,参数值互相传递和改变,她就好像媒婆一样搭桥牵线。嵌入式LINUX开发的实现主要是文件的打开关闭读写,我们也可以把文件的信息传递给控件,也可以把控件的改变值写入到文件中,做到路路畅通,一路向东!

 

好了,以上是QT开发的入门简介,去年因为有项目需求,提前针对QT做了一些功课,针对QT的一些基础开发总结整理了一些博文,有需要的可以查看哦,传送门在此

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/145223.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月17日 下午8:20
下一篇 2022年5月17日 下午8:20


相关推荐

  • 短信定位 android,短信定位

    短信定位 android,短信定位开发者名称:xunl这是一款利用发送短信来得到对方位置的应用.应用场景:1.寻找家人:家里有小孩子或老人,只要给对方发送一条包含设置好关键字的短信内容,即可以地图的方式在当前手机上显示对方的位置.2.找回手机:自己的手机找不到了,只要给自己的手机发送一条短信,即可得到手机所在地理位置.使用方法(寻找家人):1.首先说一下概念:你想知道谁的位置,那么谁就是软件中的TA,而你在软件中的角色是主人.2….

    2022年10月13日
    4
  • Spring的Bean加载流程

    Spring的Bean加载流程

    2021年4月10日
    228
  • github,gitlab,gitee的区别

    github,gitlab,gitee的区别github 是一个基于 git 实现在线代码托管的仓库 向互联网开放 企业版要收钱 gitee 即码云 是 oschina 免费给企业用的 不用自己搭建环境 gitlab 类似 github 一般用于在企业内搭建 git 私服 要自己搭环境 第一 github 针对企业要收费 那当然是不同意 毕竟都想节约资金 那就还能使用 gitee 或者 gitlab 了 第二 但是码云虽然是免费的 而且不用自己搭环境 但是企业中把项目放在别人的服务器上 始终没有安全感 第三 因此 衍生出了 gitlab 就是用于企业搭私服

    2026年3月26日
    2
  • Agent智能体如何推动人机交互与自动化决策变革?解析来了

    Agent智能体如何推动人机交互与自动化决策变革?解析来了

    2026年3月16日
    3
  • 【离散数学】单射、满射与双射

    【离散数学】单射、满射与双射本文目录1、什么是映射?1、什么是映射?我们考虑这样的关系:对于集合X中的每一个元素,都有唯一的属于集合Y中的元素被其所指向,我们就称这样的关系叫映射(英:mapping,日:写像(しゃぞう))。这是用很通俗的语言解释定义的映射,而相信大家也都在高中数学必修1里面学过,对映射这个概念想必也都不陌生吧!从这个定义中,你能get到什么信息呢?①“X集合中的每一个元素”:如果有集合X的元素不对应集合Y的某个元素的,则不是映射。②“都有唯一的Y与之对应”:如果有集合X的元素同时指向了集合Y中的两个以上个元

    2022年6月10日
    116
  • WinSCP连接VMware虚拟机被拒绝「建议收藏」

    WinSCP连接VMware虚拟机被拒绝「建议收藏」最近在做一个电商项目练手,使用了dubbo,并安装了虚拟机准备模拟熟悉一下,但是使用WinSCP一直提示拒绝连接,下面分享下我的解决办法期望对你们有帮助1.提示信息2.一开始的分析,以为是IP地址错误导致,所有ping了IP显示如下:3.分析IP地址,eth0上面显示的并不是我们常看到的4位的IP127.0.0.1这一类,继续分析可能是没有连网络,意思是:虚拟机也需要单独连接网

    2025年12月14日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号