当前位置: 首页 > news >正文

【Qt】01-了解QT

踏入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 结果展示

在这里插入图片描述


总结

这篇文章依旧没有总结

相关文章:

【Qt】01-了解QT

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

websocket股票行情接口

股票行情区别 交易所出来的数据&#xff0c;不管通过什么渠道&#xff0c;延时一般都不会差太远&#xff0c;估计一般也就几十ms的差别。 但是如果是通过http轮询&#xff0c;不太可能几十ms全部轮询一次。所以&#xff0c;做量化的话&#xff0c;用http协议是最次的选择。 …...

朴素贝叶斯分类器

目录 一、生成模型&#xff08;学习&#xff09;&#xff08;Generative Model&#xff09; vs 判别模型&#xff08;学习&#xff09;&#xff08;Discriminative Model&#xff09; 1、官方说明 2、通俗理解 3、举例 二、生成学习算法 1、数学符号说明 2、贝叶斯公式 …...

智能化植物病害检测:使用深度学习与图像识别技术的应用

植物病害一直是农业生产中亟待解决的问题&#xff0c;它不仅会影响作物的产量和质量&#xff0c;还可能威胁到生态环境的稳定。随着人工智能&#xff08;AI&#xff09;技术的快速发展&#xff0c;尤其是深度学习和图像识别技术的应用&#xff0c;智能化植物病害检测已经成为一…...

vim基本命令(vi、工作模式、普通模式、插入模式、可视模式、命令行模式、复制、粘贴、插入、删除、查找、替换)

1. Vim的作用 1.1. 文本编辑 1.1.1. 基础文本编辑功能 Vim是一个功能强大的文本编辑器&#xff0c;它可以用来创建、修改和保存各种文本文件。无论是编写简单的文本笔记&#xff0c;还是复杂的代码文件&#xff0c;Vim都能胜任。例如&#xff0c;我们可以用它来编写Python脚…...

Qt 自动根据编译的dll或exe 将相关dll文件复制到目标文件夹

Qt 自动根据编译的dll或exe 将相关dll文件复制到目标文件夹 如果你在使用 windeployqt 时遇到错误 “windeployqt 不是内部或外部命令”&#xff0c;说明你的命令行环境没有正确配置 Qt 工具路径。windeployqt 是 Qt 工具的一部分&#xff0c;它用于自动将所有必要的 Qt 库和插…...

探索新能源汽车“芯”动力:AUTO TECH China 2025广州国际新能源汽车功率半导体技术展盛况空前

广州&#xff0c;2025年11月20日‌ —— 在全球新能源车市场蓬勃发展的背景下&#xff0c;AUTO TECH China 2025 广州国际新能源汽车功率半导体技术展览会将于2025年11月20-22日在广州保利世贸博览馆盛大开幕。此次展会作为亚洲领先的车用功率半导体技术专业盛会&#xff0c;本…...

Kafka权威指南(第2版)读书笔记

目录 Kafka生产者——向Kafka写入数据生产者概览创建Kafka生产者bootstrap.serverskey.serializervalue.serializer 发送消息到Kafka同步发送消息 Kafka生产者——向Kafka写入数据 不管是把Kafka作为消息队列、消息总线还是数据存储平台&#xff0c;总是需要一个可以往Kafka写…...

WORD转PDF脚本文件

1、在桌面新建一个文本文件&#xff0c;把下列代码复制到文本文件中。 On Error Resume Next Const wdExportFormatPDF 17 Set oWord WScript.CreateObject("Word.Application") Set fso WScript.CreateObject("Scripting.Filesystemobject") Set fdsf…...

electron 打包后的 exe 文件,运行后是空白窗口

一、代码相关问题 1. 页面加载失败 1.1 原因 在 Electron 应用中&#xff0c;若loadFile或loadURL方法指定的页面路径或 URL 错误&#xff0c;就无法正确加载页面&#xff0c;导致窗口空白。 1.2. 解决 仔细检查loadFile或loadURL方法中传入的路径或 URL 是否正确&#xf…...

数据库重连 - 方案

要解决 SQL Server 连接失效后导致的错误问题,可以考虑以下几种解决方案: 1. 连接池机制: 通过实现一个连接池,确保连接失效后可以重新建立连接,而不会直接导致整个程序出错。连接池可以帮助在连接中断时自动恢复连接,而不必每次手动重连。 例如,可以通过以下方式定期…...

从 PostgreSQL 中挽救损坏的表

~/tmp-dir.dab4fd85-8b47-4d9a-b15c-18312ef61075 pg_dump -U postgres -h locathost www_p1 > wow_p1.sqlpg_dump&#xff1a;错误&#xff1a;转储表 “page_views” 的内容失败&#xff1a;PQgetResult() 失败。pg_dump&#xff1a;详细信息&#xff1a;来自服务器的错误…...

【Vue3 入门到实战】1. 创建Vue3工程

目录 ​编辑 1. 学习目标 2. 环境准备与初始化 3. 项目文件结构 4. 写一个简单的效果 5. 总结 1. 学习目标 (1) 掌握如何创建vue3项目。 (2) 了解项目中的文件的作用。 (3) 编辑App.vue文件&#xff0c;并写一个简单的效果。 2. 环境准备与初始化 (1) 安装 Node.js 和 …...

rtthread学习笔记系列(10/11) -- 系统定时器

文章目录 10. 系统定时器10.1 跳跃表[定时器跳表 (Skip List) 算法](https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/programming-manual/timer/timer?id定时器跳表-skip-list-算法) 10.2 硬件定时器10.2.1 初始化&&删除10.2.2 sta…...

mock服务-通过json定义接口自动实现mock服务

go-mock介绍 不管在前端还是后端开发过程中&#xff0c;当我们需要联调其他服务的接口&#xff0c;而这个服务还没法提供调用时&#xff0c;那我们就要用到mock服务&#xff0c;自己按接口文档定义一个临时接口返回指定数据&#xff0c;以供本地开发联调测试。 怎么快速启动一…...

像JSONDecodeError: Extra data: line 2 column 1 (char 134)这样的问题怎么解决

问题介绍 今天处理返回的 JSON 的时候&#xff0c;出现了下面这样的问题&#xff1a; 处理这种问题的时候&#xff0c;首先你要看一下当前的字符串格式是啥样的&#xff0c;比如我查看后发现是下面这样的&#xff1a; 会发现这个字符串中间没有逗号&#xff0c;也就是此时的J…...

C#版 软件开发6大原则与23种设计模式

开发原则和设计模式一直是软件开发中的圣经, 但是这仅仅适用于中大型的项目开发, 在小型项目的开发中, 这些规则会降低你的开发效率, 使你的工程变得繁杂. 所以只有适合你的才是最好的. 设计模式六大原则1. 单一职责原则&#xff08;Single Responsibility Principle&#xff0…...

java8 springboot 集成javaFx 实现一个客户端程序

1. 先创建一个springboot 程序(此步骤不做流程展示) 2. 更改springboot的版本依赖和导入所需依赖 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.7</versio…...

MySQL(高级特性篇) 06 章——索引的数据结构

一、为什么使用索引 索引是存储引擎用于快速找到数据记录的一种数据结构&#xff0c;就好比一本教科书的目录部分&#xff0c;通过目录找到对应文章的页码&#xff0c;便可快速定位到需要的文章。MySQL中也是一样的道理&#xff0c;进行数据查找时&#xff0c;首先查看查询条件…...

PanWeidb-使用BenchmarkSQL对磐维数据库进行压测

本文提供PanweiDb使用BenchmarkSQL进行性能测试的方法和测试数据报告。 BenchmarkSQL,一个JDBC基准测试工具,内嵌了TPC-C测试脚本,支持很多数据库,如PostgreSQL、Oracle和Mysql等。 TPC-C是专门针对联机交易处理系统(OLTP系统)的规范,一般情况下我们也把这类系统称为业…...

四旋翼变形控制:RL与MPC在混合动力学中的对比

1. 四旋翼变形控制的技术挑战与解决方案四旋翼变形控制&#xff08;Quadrotor Morpho-Transition&#xff09;是当前机器人领域最具挑战性的前沿技术之一。这项技术使机器人能够在空中完成形态变换&#xff0c;实现从飞行模式到地面模式的平滑切换。想象一下&#xff0c;一架四…...

tools.simonwillison.net图像处理工具集:从裁剪到优化的完整指南

tools.simonwillison.net图像处理工具集&#xff1a;从裁剪到优化的完整指南 【免费下载链接】tools Assorted useful tools, almost entirely generated using LLMs 项目地址: https://gitcode.com/gh_mirrors/tools23/tools tools.simonwillison.net图像处理工具集是一…...

Unity UGUI轻量UI框架:200行代码实现零GC界面管理

1. 为什么还要自己手写UI框架&#xff1f;——当UGUI原生方案开始“卡脖子”很多人看到这个标题第一反应是&#xff1a;“都2024年了&#xff0c;还手写UI框架&#xff1f;Asset Store里几十个成熟方案&#xff0c;NGUI、FairyGUI、TextMeshPro配套的UI系统一抓一大把&#xff…...

WPF虚拟桌宠组件:可嵌入、高性能、工程化UI生命体

1. 这不是“桌面宠物”&#xff0c;而是一个可嵌入的WPF UI组件化生命体你可能在Windows XP时代见过那只晃着尾巴、偶尔打哈欠的3D小猫&#xff0c;也可能在Win10系统托盘里点开过一个会眨眼的像素狐狸——但那些是独立进程、是系统级小工具、是“看一眼就关掉”的轻量娱乐。而…...

Burp Suite深度解析:从流量抓包到业务逻辑漏洞挖掘

1. 这不是“学个插件”——Burp Suite 是渗透测试的呼吸系统 很多人第一次听说 Burp Suite&#xff0c;是在某篇“三步拿下登录框”的速成教程里&#xff1a;装好Java、拖进浏览器代理、点几下Repeater就弹出密码明文。结果真去测一个中型SaaS后台&#xff0c;不到十分钟就卡在…...

MongoDB Limit 与 Skip 方法详解

MongoDB Limit 与 Skip 方法详解 引言 MongoDB 是一个高性能、可伸缩的文档存储系统,它提供了强大的数据存储和查询功能。在处理大量数据时,Limit 与 Skip 方法是 MongoDB 中常用的查询优化工具。本文将详细介绍 MongoDB 中的 Limit 与 Skip 方法,包括其基本用法、性能影响…...

Godot4 2D游戏开发避坑指南:TileMap绘制、节点顺序与相机设置的三个常见问题

Godot4 2D游戏开发避坑指南&#xff1a;TileMap绘制、节点顺序与相机设置的三个常见问题当你第一次用Godot4完成一个2D场景搭建时&#xff0c;那种成就感往往会被几个突如其来的bug瞬间击碎——角色神秘消失、背景纹丝不动、屏幕边缘出现诡异黑边。这些问题看似简单&#xff0c…...

Keil µVision链接器错误204解决方案

1. 问题现象与背景解析最近在使用Keil Vision进行嵌入式开发时&#xff0c;不少工程师遇到了一个令人头疼的链接器错误。具体表现为编译时出现"FATAL ERROR 204: INVALID KEYWORD"的致命错误&#xff0c;错误位置指向链接器控制文件中的特定行。这个问题在C166和C51两…...

机器学习驱动储氢材料发现:从特征工程到DFT/MD验证的完整指南

1. 项目概述与核心思路氢能被视为未来清洁能源体系的关键一环&#xff0c;但如何安全、高效、经济地储存氢气&#xff0c;一直是制约其大规模应用的瓶颈。在众多储氢技术路线中&#xff0c;固态储氢&#xff0c;特别是基于金属氢化物的储氢材料&#xff0c;因其高体积储氢密度和…...

脉冲神经网络加速器设计与边缘计算优化

1. 脉冲神经网络加速器的设计挑战与突破在边缘计算领域&#xff0c;脉冲神经网络(SNN)正以其独特的生物启发特性引发新一轮技术变革。与传统人工神经网络(ANN)相比&#xff0c;SNN通过离散的脉冲信号传递信息&#xff0c;模拟生物神经元的工作机制&#xff0c;理论上可实现超低…...