【Qt】01-了解QT

embedded/2025/1/15 23:35:29/

踏入QT的殿堂之路

  • 前言
  • 一、创建工程文件
    • 1.1 步骤介绍
    • 1.2 编译介绍
      • 方法1、
      • 方法2、
      • 编译成功
  • 二、了解框架
    • 2.1 main.cpp
    • 2.2 .Pro文件
      • 2.2.1 注释需要打井号。
      • 2.2.2 F1带你进入帮助模式
      • 2.2.3 build文件
    • 2.3 构造函数
  • 三、编写工程
    • 3.1 main代码
    • 3.2 结果展示
  • 四、指定父对象
    • 4.1 main代码
    • 4.2 结果展示
  • 总结


前言

非要说这篇文章有什么优点,我只能说,更加系统吧,我写博文的风格一般就是当笔记用,大多时候就是只有我自己能看得懂,在这篇之后,我应该要坚持写得详细点,得益于你我他吧!—2025.01.14


一、创建工程文件

1.1 步骤介绍

1.打开软件,点击创建工程。
在这里插入图片描述
在这里插入图片描述
2.使用 Qt Creator 创建一个 Qt Widgets 应用程序,并在进行 Kit 选择
在这里插入图片描述

1.Desktop Qt 5.9.1 MinGW 32bit:使用 MinGW 编译器的 32 位 Kit,适用于桌面应用程序开发。
2.Qt 5.9.1 for UWP 32bit (MSVC 2015) :使用 MSVC 2015 编译器的 32 位 Kit,适用于开发通用 Windows 平台(UWP)应用程序。
3.Qt 5.9.1 for UWP 64bit (MSVC 2015):使用 MSVC 2015 编译器的 64 位 Kit,同样适用于开发 UWP 应用程序。

3.细节选择
是否选择创建ui文件(初学阶段先不创建)
在这里插入图片描述
4.基类选择
在这里插入图片描述
按照自己需求起名字
在这里插入图片描述
对应过来就是这个的名字。
在这里插入图片描述

创建成功~

1.2 编译介绍

方法1、

编译按键介绍
在这里插入图片描述

方法2、

当然第三种方法就是快捷键
在这里插入图片描述

编译成功

编译过程会走进度条
在这里插入图片描述
进度条变绿就会成功运行
在这里插入图片描述

二、了解框架

2.1 main.cpp

在这里插入图片描述

2.2 .Pro文件

在这里插入图片描述

2.2.1 注释需要打井号。

在这里插入图片描述
在这里插入图片描述

2.2.2 F1带你进入帮助模式

选中模块然后摁F1可以跳转到帮助(为了实现这个,我把我的Snipaste都给改快捷键了。。。)
既然如此,了解一下帮助里的QWidget
在这里插入图片描述

2.2.3 build文件

程序运行会生成一个build文件,所以,其实创建文件的时候应该再在外面套一层文件。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.3 构造函数

在这里插入图片描述

三、编写工程

其余保持默认,这边主要是在main里面设置了标题的名称。

3.1 main代码

#include "my_widget.h"
#include <QApplication>
//QApplicantion应用程序类
//QT头文件没有.h
//头文件和类名一样int main(int argc, char *argv[])
{// 有且只有一个应用程序类的对象QApplication a(argc, argv);My_Widget w;w.setWindowTitle(QString("无法抵挡的帅气"));       // 设置标题// 窗口的创建默认是隐藏的,需要人为的显示w.show();return a.exec();
}

3.2 结果展示

在这里插入图片描述

四、指定父对象

如果不指定对象,对象和对象(窗口和窗口)就没有关系,直接独立
指定a是b的父对象,就是a在b的上面
有两种方法,
1、setParent
2、通过构造函数传参
通过这种绑定之后,只要父对象显示,子对象也会展示。

4.1 main代码

#include "my_widget.h"
#include <QApplication>
#include <QPushButton>int main(int argc, char *argv[])
{// 有且只有一个应用程序类的对象QApplication a(argc, argv);//My_Widget 继承于QWidget,QWidget是一个窗口基类// My_Widget也是窗口类,w同理,为一个窗口My_Widget w;QPushButton button1;                                   // 方法1w.setWindowTitle(QString("无法抵挡的帅气"));             // 设置标题button1.setText("yes");                                // 按钮内容button1.setParent(&w);                                 // 指定父对象button1.move(100,100);QPushButton button2(&w);button2.setText("no");button2.move(300,100);w.show();return a.exec();
}

在这里插入图片描述

4.2 结果展示

在这里插入图片描述


总结

这篇文章依旧没有总结


http://www.ppmy.cn/embedded/154234.html

相关文章

RV1126+FFMPEG推流项目(3)VI模块视频编码流程

视频编码的流程&#xff1a; 本章节讲的是RV1126视频编码的流程&#xff0c;在整个项目之中视频编码功能是核心之一。视频编码流程主要分三步&#xff1a;VI的初始化、VENC的初始化(硬件编码)、绑定VI和VENC节点、开启VENC线程进行视频编码的采集&#xff0c;注意一下这里的…

SQL中的行转列,列转行

SQL中的行列转换 1. 导入 有这样两张表&#xff0c;这两张表如何互相转换 student_table score_table 2. 行转列 使用 UNION ALL -- 行转列 SELECT name,语文 as subject,chinese_score as score FROM student_table UNION ALL SELECT name,数学 as subject,math_score…

微信小程序 实现拼图功能

微信小程序 实现拼图 效果示例功能描述代码示例 效果示例 微信小程序 碎片拼图 功能描述 在微信小程序中&#xff0c;实现一个简单的拼图小游戏。用户需要将四张碎片图片拖动到目标图片的正确位置&#xff0c;具体功能如下&#xff1a; 拖动功能&#xff1a; 用户可以通过手指…

react生命周期方法

一、挂载阶段 constructor&#xff1a;组件的构造函数&#xff0c;初始化state。statiic getDerivedStateFromProps:在组件实例被创建和更新之前调用&#xff0c;返回一个对象来更新state。render:渲染组件的UI。componentDidMount组件挂载完成后调用&#xff0c;通常用于发起…

华为2024嵌入式研发面试题

01 你认为最好的排序算法是什么&#xff1f; 在实际的编程中&#xff0c;最好的排序算法要根据实际需求和数据规模来选择&#xff0c;因为每种排序算法都有其优势和劣势。以下是一些常见排序算法及其优缺点&#xff1a; 冒泡排序 冒泡排序是一种简单直观的排序算法&#xff0…

c#-Halcon入门教程——标定

Halcon代码 read_image (NinePointCalibration, D:/Desktop/halcon/ca74d-main/九点标定/NinePointCalibration.gif)rgb1_to_gray (NinePointCalibration, GrayImage)get_image_size (GrayImage, Width, Height) dev_display (GrayImage)* 获取当前显示的窗口句柄 dev_get_win…

Linux IPC:管道与FIFO汇总整理

管道&#xff08;Pipes&#xff09;和先进先出&#xff08;FIFOs&#xff0c;也称为命名管道&#xff09;都是Linux中用于进程间通信&#xff08;IPC&#xff09;的机制。它们允许数据从一个进程流向另一个进程&#xff0c;类似于命令行中的管道操作符 |。下面详细介绍这两种机…

神经网络

“损失函数 王木头学科学-哔哩哔哩_bilibili 一、transformer和注意力机制的本质&#xff0c;以及编码和解码的结构及其与注意力机制的关系&#xff0c;帮助理解transformer的优势和应用场景。 00:01 - 介绍transformer是人工智能主流技术&#xff0c;大语言模型GBT是在其基础…