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

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:接收对象在接收到信号之后所需要调用的函数


相关文章

  • 在建设工程施工合同中,常常会约定工程质量保证金。建立工程质量保证金这一制度,有利于承包人提高质量意识、提升施工水平、保证工程质量。但实践中不乏发包人设立各式各样的保证金、预留的保证金比例过高,加重承包人的负担, 反而不利于承包人开展施工任务,甚至可能为了降低成本,人为地降低工程质量,反而与工程质量保
    2025-06-07 00:34:35
  • 证券类:私募基金管理人应当在名称中标明“私募基金”“私募基金管理”字样,并在经营范围中标明“私募投资基金管理”“私募证券投资基金管理”等体现受托管理私募基金特点的字样。股权类:私募基金管理人应当在名称中标明“私募基金”“私募基金管理”“创业投资”字样,并在经营范围中标明“私募投资基金管理”“私募股权
    2025-06-06 15:16:29
  • prejudice&lt;pre.jud.ice&gt;偏见,成见,歧视详细解读前缀: pre-“在前,提前,预先”,变体形式有“pri,pro”.词根: jud(judge)-判断后缀: -ice,放在单词词尾,通常表示“名词”,'prejudice&lt;pre提前+jud判断+ice缀&gt;
    2025-06-06 13:27:01
  • 刚住了半年的新房,踩在地板上就觉得有点怪怪的,仔细一听才发现是有点异响,可是刚装的地板为什么会有这个问题呢?有时候地板异响未必是地板质量的问题,很有可能在安装过程中出现了问题,也有可能是气候变化导致的。总结起来,通常有这三种原因。1、气候过于干燥或潮湿当夏天铺得地板转入冬天时,空气陡然干燥,可能会踩
    2025-05-09 12:48:12
  • 面对《战锤40k:星际战士2》这款深受科幻迷喜爱的动作射击游戏,玩家们往往满怀期待地准备踏上星际征途,然而,登录失败的问题却如同一块绊脚石,让这份期待瞬间落空。当遇到这种情况时,UU网络优化工具便成为了许多玩家心中的救星。《战锤40k:星际战士2》以其宏大的背景设定、丰富的角色设定和刺激的战斗体验,
    2025-05-08 03:11:45
  • 长寿花卷叶子有可能是因为盆土过于贫瘠,根系无法舒畅吸收养分导致。每隔2年换盆换土1次为宜;光照过强,灼伤叶片也会导致卷叶子。要适当遮荫,在夏季要养在阴凉通风的环境中;温度不适导致卷叶子,最好将生长环境温度控制在15-25℃之间,保证植株健康成长;缺水干旱,积水烂根都会卷叶子,日常浇水要做到干透浇透;
    2025-05-08 02:23:55