一、QT的前世今

一、Qt是什么

  1、Qt 是一个1991年由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务。

  2、Qt是面向对象的框架,具有面向对象语言的特性:封装、继承、多态。

  3、2008年,奇趣科技被诺基亚公司收购,当时诺基亚手机上的很多应用都是用QT开发的。我也是从那一年才知道的Qt。

  4、2014年4月,跨平台集成开发环境Qt Creator 3.1.0正式发布,实现了对于iOS的完全支持,实现了全面支持iOS、Android、Windows、Linux。使得QT开发的程序可以遍布桌面、手机、嵌入式等各种不同的设备上。

二、Qt和Qt Creator

Qt是基于C++语言写的用于Qt开发的Q打头的类库集合,或者说是开发框架,里面集成了一些库函数,提高开发效率。

Qt Creator是用Qt开发的IDE,是开发环境,也可以叫开发工具,类似的像VS、VSCode、Pycharm,也可以进行Qt开发,当然VS中的Qt是作为一个插件集成到VS平台的。

三、Qt的特点

  1、基于 C++ 的一种语言扩展(Extention)

    Qt 的类都是用 C++ 写出来的。这也就是说, Qt 本身已经继承了C++的快速、简易、面向对象等许多的优点。并且封装成好多的库类供使用,不用担心底层的跨平台兼容性问题。如我们最常用的serialport, file, I/O device, date/time,socket等。

  2、可移植性

    Qt不只是可以在 Linux 中运行,也同样可以运行在 Windows 、Mac OS X等多种不同的平台中。包括现在大放光彩的国产操作系统上,如中标麒麟的龙芯,统信UOS等。

  3、高效

    Qt运行时无需依赖“虚拟机”,可直接操作内存,因而使用Qt开发的应用程序运行速度快。Qt管理好内存,比Java\C#等占用的内存空间更小。所以Qt在比如音视频播放器、视频监控软件、工业控制软件、嵌入式软件、汽车车机方面是最好的选择。像我们市面上常见的摄像头-海康威视,他的桌面端管理软件就是Qt开发的。现在好多汽车制造商的车机系统也都是用Qt在做。

  4、国产化

        Qt在国产化方面是重中之重,军工、汽车、工业控制、大型医疗设备等,尤其是军工方面,随着我国军工国产化的逐渐推进,Qt必将会在此领域大放光彩,比如WPS是Qt开发的,已经占领国产操作系统领域大部分市场了。

四、Qt的缺点

1、Qt和UI布局设计真的很麻烦,不像delphi、C# winform或WPF,支持到控件级的上下左右布局,Qt的UI布局需要将容器先搭建好,再往容器中放控件(类似于先把衣柜打好,再往里放衣服),并且栅格化后,再加控件还需要打破现有布局格式才可以,总之很容易将界面弄乱。

2、Qt的控件效果设置也很不友好,有很多效果需要自己写qss样式来实现,但我觉得有利有弊,优点是灵活扩展多样化,缺点是自己会多写很多代码,并且要不断的尝试写完的qss是什么样的效果,达没达到要求。其实qss是个好东西,类似于web技术栈中的css,在以往的工作中,我发现好多重复的qss写法,希望大家以后在写程序时注意不要重复的写css样式,在最上层的容器中通过类,名称等可以控制全部或某一个控件的样式。

3、Qt原生的控件功能也不太完善,也不太漂亮,第三方的控件也比较少,所以做出来的东西要想漂亮,在UI上要花长时间来设计。但是你想在嵌入式、国产化、跨平台领域开发软件,也没有更好的工具了,首先还是Qt。

4、Qt的使用场景大多还是桌面端应用程序开发,有一定的局限性。

五、Qt的编译器-MinGW

1、Qt的安装程序主要分为windows、linux、mac的版本,分别在不同的平台运行。

2、Qt5.9以前的版本,windows版本又细分了一些版本,包括MinGW和MSVC。其中 MSVC 用的是 VS 编译器,同时还需要安装一些Visual C++的库,如果你的电脑中没有安装VS那就不要安装这个版本了,否则使用时编译器会有错误,编译程序会通不过。

3、Qt5.9以后的版本,把以前版本中的一些细分都集成到一个安装包中,可以看到安装包从以前的1.2G变为了2.3G。而具体的细分就放到了安装时自选了,比如之前的MinGW和MSVC等不同版本就可以在安装时选择,而windows版本就都集成到 qt-opensource-windows-x86-XXX 中。

4、windows系统下最常用编译器是MinGW 32位的。

《写在最前边》

《一、QT的前世今生》

《二、QT下载、安装及问题解决(windows系统)》


《三、Qt Creator使用》 ​​​

​​​​​​​《四、Qt 的第一个demo-CSDN博客》

《五、带登录窗体的demo》

《六、新建窗体时,几种窗体的区别》 

《七、Qt 信号和槽》 ​​​​​​​

  • 25
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

周不易

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值