学习Qt之基础篇——从入门开始(1)

简介: Qt 简介 Qt是一个跨平台的C++应用程序开发框架,被广泛用于开发GUI程序。 Qt有丰富的 API且面向对象。Qt是自由且开放源代码的软件,在GNU较宽松公共许可证条款下发布。支持广泛的编译器,包括GCC的C++编译器和Visual Studio。

Qt 简介


       Qt是一个跨平台的C++应用程序开发框架,被广泛用于开发GUI程序。 Qt有丰富的 API且面向对象。Qt是自由且开放源代码的软件,在GNU较宽松公共许可证条款下发布。支持广泛的编译器,包括GCC的C++编译器和Visual Studio。


Qt的历史


        Haavard Nord和Eirik Chambe-Eng于1991年开始开发"Qt",1994年3月4日创立公司,最早名为Quasar Technologies,然后更名为Troll Tech,然后再改为Trolltech,中文名是“奇趣科技”,2008年6月17日被NOKIA公司收购,以增强该公司在跨平台软件研发方面的实力,更名Qt Software。2009年5月11日,诺基亚Qt Software宣布Qt源代码管理系统面向公众开放,Qt开发人员可通过为Qt以及与 Qt相关的项目贡献代码、翻译、示例以及其他内容,协助引导和塑造Qt未来的发展。为了便于这些内容的管理,Qt Software启用了基于Git和Gitorious开源项目的Web源代码管理系统。


          2012年8月9日,Digia宣布已完成对诺基亚Qt业务及软件技术的全面收购,并计划将Qt应用到Android、iOS及Windows 8平台上。


支持平台


           使用Qt开发的软件,相同的代码可以在任何支持的平台上编译与运行,而不需要修改源代码。会自动依平台的不同,表现平台特有的图形界面风格。


Qt模块


            Qt有相当多的模块,涉及文件读写、XML操作、JSON解析、正则表达式、智能指针、多线程、数据库、网络操作、图片动画显示、多媒体支持和WebKit。Qt5.2 更包含串口、蓝牙、手机卫星定位等功能。


图形用户界面


            基于Widget的图形用户界面

            基于QML的新图形用户界面


Qt基础知识之信号与槽


           信号和槽是Qt的核心,就相当于MFC的消息传递和回调函数一样。只不过功能比MFC 消息处理的机制和回调函数更强大。


界面布局


              Qt 有可视化的开发工具QtCreator 或者QtDesigner。鼠标点点拖拖就可以生成满足需要的界面。


国际化


              Qt可以很方便的支持多国语言。比如我们在开发时,只要在字符串放在’tr’里边,就可以使用Qt自带的工具抽取成ts文件,然后使用Qt Liguist进行翻译。


Qt相关下载资源链接


http://qt-project.org/

http://qt-project.org/wiki/Wiki_Home_SimplifiedChinese


第一个小例程:


       1)首先从上面的链接出下载Qt在Windows平台上,当然也可以在Liunux(Ubuntu)上进行安装,我已经在Ubuntu上试着安装过了,如图所示:

20180716204802163.png

上面是Windows平台上安装的qt开发平台,  

20180716204840565.png在网站上下载这个软件就可以安装到Windows平台上,当然也能下载Linux安装包在Ubuntu下进行make安装,结果如下

20180716204954491.png好成后,让我们试着做一个新手的第一个小例程吧:

2)创建工程,创建一个qt控制台程序,命名为常用的hello_world吧。20180716205543398.png

然后一直点下一步就可以了,得到了这个

20180716205805673.png

3)就像是编写简单的C语言第一课那样编一个简单的hello word!

#include <QtCore/QCoreApplication>
#include <stdio.h>
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    printf("hello world !\n");
    return a.exec();
}

20180716210142831.png

这样就完成了简单的QT环境的搭建,接下来让我们开始好好学习QT吧!!

相关文章
|
6月前
|
Web App开发 编解码 安全
视频会议技术 入门探究:WebRTC、Qt与FFmpeg在视频编解码中的应用
视频会议技术 入门探究:WebRTC、Qt与FFmpeg在视频编解码中的应用
617 4
|
18天前
|
存储 SQL 数据库连接
【QT速成】半小时入门QT6之QT前置知识扫盲(二)
【QT速成】半小时入门QT6之QT前置知识扫盲(二)
88 13
|
25天前
|
存储 SQL 数据库连接
【QT速成】半小时入门QT6之QT前置知识扫盲(二)
【QT速成】半小时入门QT6之QT前置知识扫盲(二)
|
25天前
|
数据可视化 编译器 API
【QT速成】半小时入门QT6之QT前置知识扫盲(一)
【QT速成】半小时入门QT6之QT前置知识扫盲(一)
|
5月前
|
XML 开发框架 JSON
【Qt】Qt入门
【Qt】Qt入门
|
2月前
|
定位技术 Go 开发工具
dynamic-situational-awareness-qt学习记录
本文是作者yantuguiguziPGJ关于dynamic-situational-awareness-qt学习记录的分享,介绍了在Qt学习过程中发现的qml资源丰富的代码仓库,并提供了资源路径和相关的安装、配置步骤,涉及的内容有数字地球、GIS纹理等,同时提供了相关链接和git命令来克隆代码仓库和ArcGIS Runtime SDK for Qt的安装说明。
|
22天前
|
编译器 API C语言
【QT速成】半小时入门QT6之QT前置知识扫盲(一)
【QT速成】半小时入门QT6之QT前置知识扫盲(一)
|
5月前
|
计算机视觉
【轻松入门】OpenCV4.8 + QT5.x开发环境搭建
【轻松入门】OpenCV4.8 + QT5.x开发环境搭建
76 0
【轻松入门】OpenCV4.8 + QT5.x开发环境搭建
|
4月前
|
C++
Qt中的信号与槽如何学习?(包括自定义信号)这篇文章告诉你
以现实中的事件来举例的话,例如有两把不同颜色的信号枪,分别是红色,绿色,打响不通颜色的信号枪会触发不同的槽发生,比如说打响红色这个人就跑步,绿色就走步,但是还有一个很重要的机制,那就是连接,我们需要把信号枪去跟这个人的动作连接起来。 如果上面理解没问题的话我们可以把信号和槽看成两个工具,我们最重要的是如何去把这两个工具连接起来。 它的作用可以让我们更加灵活的去使用不同窗口间的切换以及某些事件的连接。
|
4月前
|
开发者
Qt中的事件该如何学习?(附带案例)
事件是Qt中比较重要的一部分,在初期如果理解不当学习可能会比较困难,这里提一嘴当初教我的那位老师水平是真的高,让我很轻易的就理解了事件的概念。 在平时我们见到那些界面上的某些快捷键就有可能是事件做的,例如ESC关闭窗口,Enter提交或者登录这种类似的,这也是事件的强大之处。
101 0