Qt 基本知识

这篇具有很好参考价值的文章主要介绍了Qt 基本知识。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Qt 基本知识

Base class

  • QMainWindow:主窗口
    • 菜单栏
    • 工具栏
    • 状态栏
  • QWidget:空白的窗口
    • 所有界面组件的基类
  • QDialog:对话框类

Hello World

  • new project >>> Qt Widget Application
  • qmake
    • 后缀为 .pro
  • 基类:QWidget
    • Generate form 不要去掉 >>> 自动生成 ui 文件
  • Kit 一般使用第一个
  • widget.ui 界面加个 label 就行
    • 可以在右下角进行调整

GUI 程序设计基础

GUI 程序结构与运行机制

  • xxx.pro:qmake构建系统的项目配置文件,储存了各种项目设置
  • main.cpp:主程序入口文件,实现 main 函数
  • widget.ui:使用 XML 格式描述元件及布局的界面文件
  • widget.h:窗口类定义头文件
    • 用到了 .ui 文件
  • widget.cpp:实现文件

qmake 配置文件中常见变量的含义(qmake Manual

含义 变量
QT QT模块列表,在用到某些模块时需要手动添加
CONFIG 通用配置选项
DEFINES 预处理定义列表
TEMPLATE 模板,是 app(应用程序)还是 lib(库) >>> 默认为 app
HEADERS 头文件列表
SOURCES 源程序文件列表
FORMA UI文件列表
RESOURCES 资源文件(.qrc)列表
TARGET 生成的可执行文件名称 >>> 默认与项目同名
DESTDIR 可执行文件的存放路径
INCLUDEPATH 文件搜索路径列表
DEPENDPATH 其他依赖文件的搜索路径列表
INSTALLS 创建指向目录的符号链接

qmake

  • 构建项目的软件
    • 根据 .pro 文件生成 Makefile 文件
    • C++ 编译器根据 Makefile 文件进行编译和链接
  • 自动生成 MOC (meta-object compiler) 和 UIC (user interface compiler) 生成构建规则
  • $$ 为替换函数的前缀

main.cpp

#include "widget.h"
#include <QApplication>

int main(int argc,char *argv[])
{
    QApplication a(argc,argv);		//定义并创建应用程序
    Widget w;						//定义并创建窗口
    w.show();						//显式窗口
    return a.exec();				//应用程序运行,开始消息循环和事件处理
}

widget.h

#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>

namespace Ui		//命名空间
{
    class Widget;	//从ui_widget.h文件里定义的类,外部声明
}

class Widget : public QWidget
{
    Q_OBJECT		//宏,使用Qt信号与槽机制必须添加
public:
    explicit Widget(QWidget *parent = 0);
    ~Widget();
private:
    Ui::Widget *ui;	//Ui::Widget类型的一个指针,指向可视化的界面
};

#endif // WIDGET_H

widget.cpp

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent):QWidget(parent),ui(new Ui::Widget)
{
    ui->setupUi(this);	//实现组件的各种设置、信号与槽的关联
}

Widget::~Widget()
{
    delete ui;		//new了要回收
}

认识信号槽

  • 一个 label 、一个 push button
    • 可以对两者进行适当的修改
  • 下方 Signals and Slots Editor
    • 加号
    • 发送者:push button
    • 信号:clicked()
    • 接收者:Widget
    • 槽:close()
  • 可以按 F2 跳转至 ui widget.h

Qt 项目构建基本原理

  • 可执行文件
    • << 标准 C++ 编译器 << 标准 C++ 程序
      • << MOC << Qt C++ 头文件
      • << UIC << 窗口 UI 文件
      • << RCC << 资源文件
  • 元对象系统(meta-object system)
    • 元对象编译器(MOC)会对项目中的头文件进行预处理

文章来源地址https://www.toymoban.com/news/detail-836125.html

到了这里,关于Qt 基本知识的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端基本知识介绍

    目录 一.前端三剑客 1.前导 2.三剑客的分工 二.VsCode的介绍与配置 1.vscode的介绍 2.vscode的下载安装 3.vscode的使用 3.1 图形界面操作 3.3 常用插件 三.HTML基础标签 HTML基础知识 1.HTML为何物? 2.标签介绍 3.HTML属性 4.HTML标签骨架 基本的HTML标签 1.HTML标题标签 2.换行与空格 3.HTML段落

    2024年02月03日
    浏览(26)
  • 数学向量基本知识

    1.向量相关定义 2.向量的线性运算 3.向量积与数量积    向量积与数量积的区别 名称 标积/内积/数量积/点积 矢积/外积/向量积/叉积 运算式(a,b和c粗体字,表示向量) a·b=|a||b|·cosθ a×b=c,其中|c|=|a||b|·sinθ,c的方向遵守右手定则 几何意义 向量a在向量b方向上的投影与向

    2023年04月08日
    浏览(65)
  • Linux 基本知识

    FHS(Filesystem Hierarchy Standard)—— 文件系统层次化标准 。 Filesystem Hierarchy Standard(文件系统层次化标准)的缩写,多数Linux版本采用这种文件组织形式,类似于Windows操作系统中c盘的文件目录,FHS采用树形结构组织文件。FHS定义了系统中每个区域的用途、所需要的最小构成的

    2024年02月16日
    浏览(26)
  • CSS基本知识

    CSS叫做层叠样式表。CSS 能够对网页中元素位置的排版进行像素级精确控制, 实现美化页面的效果。能够做到页面的样式和结构分离。 举个例子: 这里的style标签我们一般设置在head标签里。 可以看出被选择器修饰的和没被修饰的不同。 写在 style 标签中,嵌入到 html 内部,理

    2024年01月24日
    浏览(33)
  • camera 硬件基本知识

    参考博客:1.【Camera专题】Qcom-你应该掌握的Camera调试技巧2_c枫_撸码的日子的博客-CSDN博客_outputpixelclock 2.浩瀚之水_csdn的博客_CSDN博客-深度学习,嵌入式Linux相关知识汇总,Caffe框架领域博主 3.一个早起的程序员的博客_CSDN博客-FPGA,PCIe应用实战,PCI-E理论剖析领域博主 一、硬件相关

    2024年02月15日
    浏览(31)
  • c++ 基本知识(一)

    一、c++调用python #include cstdlib int main() {     int result = system(\\\"python your_script.py\\\");     return 0; } 二、cmake、make、gcc的区别? 1、CMake(Cross-Platform Make)是一个跨平台的构建工具,用于生成适合不同操作系统和编译器的构建脚本。它使用CMakeLists.txt文件来描述项目的构建过程,并根据

    2024年02月16日
    浏览(24)
  • shell基本知识

    一、为什么学习和使用shell编程 二、什么是shell 系统当前支持的所有的shell: 三、shell的分类 为nologin,运行进程的,不允许登录系统,考虑系统安全性 用户名:密码的占位符:uid(用户的id):gid(用户所属基本组的id:关于账号的描述信息:用户家目录:当前用户与系统交

    2024年02月12日
    浏览(34)
  • 无人机基本知识

    目录 前言 一、总体概况 二、机身 三、涵道 四、动力系统 1、 螺旋桨  2、电机 3、电调 4、电池 五、遥控器 六、自动驾驶仪(飞控) 1、组成 (1)传感器 (2)接口 2、飞控的连接 3、控制逻辑 4、作用 5、产品 七、地面站 八、数传 九、深度相机 总结 参考文献 四旋翼飞机

    2024年01月19日
    浏览(29)
  • Git基本知识

    Git 官网: https://book.git-scm.com/ Git 完整命令手册地址: http://git-scm.com/docs Git 中文文档: https://git-scm.com/book/zh/v2 Git 各平台安装包下载地址为: http://git-scm.com/downloads 2.1 Windows下的安装 安装包下载地址: https://github.com/git-for-windows/git/releases/ https://gitforwindows.org/ 官网慢,可以用

    2024年02月08日
    浏览(23)
  • python基本知识学习

    在控制台输出Hello,World! 单行注释:以#开头 多行注释: 选中要注释的代码Ctrl+/ 三单引号 三双引号 第一个字符必须是字母表中字母或下划线 _ 。 标识符的其他的部分由字母、数字和下划线组成。 标识符对大小写敏感。 标识符也叫变量名,变量名就是一个变量的名字,例如

    2024年02月15日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包