Qt —— 创建 hello world

文章目录

  • [1. 图形化方式](#1. 图形化方式)
  • [2. 纯代码方式](#2. 纯代码方式)

1. 图形化方式

通过图形化方式 在界面上创建出一个控件 显示 hello world


点击 widget.ui 并打开 调用 Qt designer 这个图形化工具 完成窗口界面的编辑


在左侧 Display Wigets 中 找到 label 控件 并将其拖拽到右侧界面上


可以通过 拖动边框 来放大 label


通过双击 可以进行 编辑的状态 然后输入 Hello World
就可以显示出 Hello World 了


此时就存在了一个 label 控件
Qt designer 的右上角 通过树形结构 显示出了当前界面上都有那些控件


此时在 widget.ui中 就会 多出一句 Hello World


在界面上拖拽 一个 QLabel 控件 ui文件的xml中就会多出来这一段代码
进一步 的 qmake 就会编译项目的时候 基于这个内容 生成一段C++代码
通过C++代码构建出界面内容


2. 纯代码方式

点击 widget.cpp 并打开


其中包含 一个 Widget 的构造函数
一般通过代码来构造界面的时候 通常会把构造界面的代码 放到 Widget 的构造函数中

Qt中 每个类都有一个对应同名的头文件 所以在 widget.cpp 中 使用 #include < QLabel >

label 表示 界面上一个用来显示内容的字符串统计


使用C++中的new 去创建一个 Qlabel类的对象
并在构造函数中添加参数 this 即 给当前的label对象 指定一个 父对象
在Qt中存在 对象数的概念 本质为 一个 n叉树 即有n个子节点 并且只有一个父节点
所以当指定父对象时 就知道在树的那个位置


this 指向的是 当前构造函数所对应的对象 即 main.cpp 中的 widget对象

创建的 label 对象 父元素 为 widget 对象


调用 label对象中的 setText 函数 表示 设置控件中 要显示的文本是啥
其中参数为 Qstring

Qt 为了让自己的开发能够更顺畅 就自己发明了一套轮子
搞了一系列的基础类 来支持 Qt的开发
包括但不限于 字符串 QString 动态数组 QVector 链表 QList


在Qstring 中提供 C 风格字符串作为参数的构造函数
不显式构造 QString 上述代码中 C风格字符串也会隐式构造 Qstring对象

QString对应的头文件 已经被很多 Qt内置的其他类间接包含了 因此一般不需要显式包含QString头文件


此时就显示出了 hello world

相关推荐
努力努力再努力wz12 小时前
【Qt入门系列】第一个 Qt Widgets 程序:项目创建、UI 文件、Hello World、对象树与 qDebug 日志
java·c语言·开发语言·数据结构·c++·qt·ui
电子云与长程纠缠13 小时前
UE5 GameFeature创建与使用
开发语言·学习·ue5·游戏引擎
Hua-Jay13 小时前
OpenCV联合C++/Qt 学习笔记(十五)----形态学操作及应用
c++·笔记·qt·opencv·学习·计算机视觉
_Evan_Yao13 小时前
零基础学编程,第一门语言选Python还是C?
c语言·开发语言·python
凤凰院凶涛QAQ13 小时前
《C++转Java快速入手系列》抽象类和接口篇
java·开发语言·c++
河阿里13 小时前
Lambda表达式(Java):从语法本质到工程实践
java·开发语言
MATLAB代码顾问13 小时前
MATLAB实现粒子群算法优化PID参数
开发语言·算法·matlab
陈天伟教授13 小时前
图解人工智能(1)居里点
大数据·开发语言·人工智能·gpt
chao18984413 小时前
Qt Modbus TCP 通讯源码
qt·tcp/ip·命令模式
大鹏说大话13 小时前
Kotlin vs Java:Android之外,后端开发该怎么选?
开发语言