抠百科
手机版
 您现在的位置:  首页 > 生活常识 >

qt是什么意思(QT基础)

100次浏览     发布时间:2024-11-18 08:16:55    

一、Qt简介

1、什么是Qt

QT是一个跨平台的C++图形用户界面应用程序框架。它为应用程序开发者提供建立艺术级图形界面所需的所有功能。它是完全面向对象的,很容易扩展。包括一套跨平台的类库、一套整合的开发工具和一个跨平台的集成开发环境(IDE)。

2、Qt支持的平台

Windows – XP、Vista、Win7、Win8、Win2008、Win10

Uinux/X11 – Linux、Sun Solaris、HP-UX、Compaq Tru64 UNIX、IBM AIX、SGI IRIX、FreeBSD、BSD/OS、和其他很多X11平台

Macintosh – Mac OS X

Embedded – 有帧缓冲支持的嵌入式Linux平台,Windows CE

3、Qt的安装

Linux离线安装:

sudo ./qt-opensource-linux-x86-5.5.1.run

Sudo cp /opt/5.5.1/gcc/bin/qmake /usr/bin

Windows下离线安装:直接双击安装软件即可

二、创建Qt项目

1、使用向导创建:

打开Qt Creator 界面选择 New Project或者选择菜单栏 【文件】-【新建文件或项目】菜单项弹出New Project对话框,选择Qt Widgets Application,

选择【Choose】按钮,弹出如下对话框

设置项目名称和路径,按照向导进行下一步

选择编译套件

向导会默认添加一个继承自MainWindow的类,可以在此修改类的名字和基类(我们目前一般选QWidget作为基类)。继续下一步

即可创建出一个QT桌面程序。

2、手动创建

(1)添加一个空项目

选择【choose】进行下一步。设置项目名称和路径 —> 选择编译套件 --> 修改类信息 --> 完成(步骤同上),生成一个空项目。

(2)在空项目中添加文件:在项目名称上单击鼠标右键弹出右键菜单,选择【添加新文件】

弹出新建文件对话框

在此对话框中选择要添加的类或者文件,根据向导完成文件的添加。

三、第一个简单的Qt应用程序

#include <QApplication>

#include <QWidget>//引用窗口类声明的头文件

int main(int argc, char *argv[])//入口函数

{

QApplication a(argc, argv);//GUI事件处理对象

QWidget w;//定义窗口类对象

w.show();//显示窗口

return a.exec();//事件循环

}

说明:

Qt头文件没有.h后缀,Qt中一个类对应一个头文件,类名就是头文件名。

QApplication应用程序类

管理图形用户界面应用程序的控制流和主要设置。

是Qt的整个后台管理的命脉它包含主事件循环,在其中来自窗口系统和其它资源的所有事件处理和调度。它也处理应用程序的初始化和结束,并且提供对话管理。

对于任何一个使用Qt的图形用户界面应用程序,都正好存在一个QApplication 对象,而不论这个应用程序在同一时间内是不是有0、1、2或更多个窗口。

QWidget是QT的窗口基类,所有的窗口都由其派生而来。

a.exec()

程序进入消息循环,等待对用户输入进行响应。这里main()把控制权转交给Qt,Qt完成事件处理工作,当应用程序退出的时候exec()的值就会返回。

四、信号和槽机制

当我们改变一个部件时,往往想要让另一个部件知道,如按下一个按钮,整个窗口退出。可以这样来描述该机制:当点击按钮时按钮会自动产生一个clicked()信号 ,我们将这个信号连接到窗口的quit()槽函数上,这样在点击按钮时就会自动运行窗口的quit()槽函数。

信号和槽的连接:

为了体验一下信号槽的使用,我们以一段简单的代码说明:

#include <QApplication>

#include <QPushButton>

int main(int argc, char *argv[])

{

QApplication app(argc, argv);


QPushButton button("Quit");

QObject::connect(&button, &QPushButton::clicked,

&app, &QApplication::quit);

button.show();

return app.exec();

}

我们按照前面介绍的在 QTCreator 中创建工程的方法创建好工程,然后将main()函数修改为上面的代码。点击运行,我们会看到一个按钮,上面有“Quit”字样。点击按钮,程序退出。

connect()函数最连接信号与槽常用的一般形式:

connect(sender, signal, receiver, slot);

参数:

sender:发出信号的对象

signal:发送对象发出的信号

receiver:接收信号的对象

slot:接收对象在接收到信号之后所需要调用的函数


相关文章

  • 说起90年代末的主机大战,老玩家们一定记得世嘉土星和索尼PS那场没有硝烟的战争。在这场较量中,《樱花大战》就像一颗璀璨的流星,用惊艳的动画和独特的玩法照亮了整个游戏圈,却也因为某些方面的不足留下了不少遗憾。那时候VCD才刚刚普及,大部分游戏机的画面还停留在马赛克阶段。但《樱花大战》一登场就让人眼前一
    2025-08-21 03:55:11
  • 道具价值与获取意义万蛊谣曲谱是《大侠立志传》中极具价值的特殊道具,作为九黎部落的秘传曲谱,它不仅关系到特定任务的完成,更是解锁高阶毒术的关键物品。掌握正确的获取方法,将助你在江湖中如虎添翼。详细获取流程第一步:前置条件准备毒术修为要求:必须达到100点毒术造诣可通过以下方式提升:反复炼制基础毒药完成
    2025-08-20 16:55:38
  • 一、文章导读踏入《绯色回响》这奇幻瑰丽的游戏世界,每一次战斗都是实力与策略的碰撞。在 2025 年的今天,各路玩家不断钻研,摸索出了多套堪称 “最强” 的阵容搭配。还在为战斗失利而苦恼?为阵容搭配毫无头绪而发愁?别着急,接下来就为你呈上精心整理的最强阵容攻略,带你在游戏中披荆斩棘,称霸四方!二、绯色
    2025-08-20 12:30:45
  • 遮天凡尘一叶是一款以小说《遮天》改编的国风武侠冒险手游,超级梦幻的仙侠题材冒险玩法,还原小说中的角色形象,怀揣着非同凡响的仙法技术,可以通过不断的克服更多危险来完成试炼进阶修为。下面是小编给大家带来的《遮天:凡尘一叶》新手玩法攻略,感兴趣的小伙伴们一起来看看吧。职业与门派怎么选?先搞懂这些特点职业定
    2025-08-19 19:15:46
  • 各位训练家们,大家好!今天为大家带来的是渡岛海岸的全面收集攻略。渡岛海岸处于湿地之岛、要塞遗迹以及鲨小子的地盘之间,是一块连接这几个区域的中间地带。这里海洋面积广阔,既无法建立据点,也没有帕鲁在此常驻。那么,渡岛海岸究竟有哪些关键之处值得我们关注呢?下面,就让我们一同深入了解。一、地区概况渡岛海岸的
    2025-08-19 05:39:22
  • 昨天我们已经聊过远古八废的前四废,但八废里每一个都是小丑,后八废可谓是有过之而无不及,那么接下来的四位有多小丑呢?这期我们一起来看看吧!保卫宇宙之战士——蓝高达曹仁曹仁只有【据守】一个技能,结束阶段可以摸三张牌,然后翻面。曹仁每两轮摸五,代价是只有一次出牌机会,就算是在远古时代的游戏环境,曹仁的发挥
    2025-08-18 21:44:16