Qt入门(二):Qt的基本组件

目录

Designer程序面板

1、布局Layout

打破布局

贴合窗口

2、QWidget的属性

3、Qlabel标签

显示图片

[4、QAbstractButton 按钮类](#4、QAbstractButton 按钮类)

按钮组

[5、QLineEdit 单行文本输入框](#5、QLineEdit 单行文本输入框)

[6、ComboBox 组合框](#6、ComboBox 组合框)

7、若干与数字相关的组件


Designer程序面板

Qt包含了一个Designer程序 ,用于通过可视化界面设计开发界面,保存的文件格式为.ui(界面文件)。界面文件内部使用xml语法的标签式语言。
在Qt Creator中创建项目时,选中界面文件选项,可以让自带的窗口类使用界面文件。


可以看到项目中会增加一个界面文件,双击此文件,可以直接使用内置的Designer程序打开并设计。

Designer程序面板区域划分如下所示:

所有Designer中的操作都可以通过C++代码实现。

1、布局Layout

可以把布局看做成一个透明的盒子,内部可以放置子组件,这些内部的子组件会按照布局的预设规律自动排序。

布局是可以嵌套的,对于外层布局而言,内层布局相当于外层布局的子组件。

一般比较常用垂直布局和水平布局的方式。

· 垂直布局:内部组件竖着排成一排。

· 水平布局:内部组件横着排成一排。
常用属性如下:

打破布局

选中布局后,点击可以打破布局。

贴合窗口

布局可以贴合窗口,只要选中窗口对象后,再次点击 按钮之一即可。

使用 Spacers 伸展器组件可以填充空白。

这样组件之间的缝隙可以随着窗口等比例缩放。

效果如下:

2、QWidget的属性

QWidget的属性在Designer中显示为淡黄色,下面是一些常用属性:

3、Qlabel标签

QLabel用于显示文字和图片,需要注意的是,QLabel不能与用户交互的,只能展示使用,因此没有合适的信号函数。
QLabel常用属性如下:

显示图片

Qt可以直接从本地读取图片,支持绝对路径和相对路径,但是并不建议这样做,原因是换一台计算机运行程序时,这些图片路径可能会存在改变。

建议先把图片导入到项目中,成为项目资源,直接使用Qt虚拟的资源路径导入图片,可以在任何环境下使用这些资源图片。

注意导入的图片不能特别大(分辨率过高或文件体积过大),因为图片的操作非常消耗程序资源。

下面是导入图片成为项目资源的操作步骤:

  1. 把命名好(不包含中文字符)的图片文件放置到项目的工作目录中。

  2. 在Qt Creator中选中项目名称,鼠标右键,点击"添加新文件"。

  1. 在弹出的窗口中,按照下图所示操作。

  2. 在弹出的窗口中给资源文件命名,例如res

  3. 在项目管理界面,直接点击"完成",可以看到在项目中多了一个.qrc格式的资源文件。

  4. 首先选中qrc文件,点击添加前缀,可以给资源文件一个新建的虚拟路径。

  1. 添加完成前缀后,点击,可以导入图片到项目中称为资源。

  2. 导入成功后,可以在qrc文件中看到导入成功的图片。

  3. 点击窗口左下角的(快捷键 Ctrl+B)重新构建项目,然后就可以在Designer找到图片资源并使用了。

4、QAbstractButton 按钮类

QAbstractButton是按钮类的抽象基类,因此内部包含了按钮的基础属性和函数。

相关组件

常用属性:

按钮类的常用信号函数:

按钮组

可以使用 QButtonGroup 组件对多个按钮进行分组,这是一种按钮的逻辑分组,没有任何UI效果,其主要目的是用一个信号槽同时监控多个按钮对象的状态。

信号函数如下:

参数中表示当前触发按钮对象本身,表示当前触发按钮的编号。

5、QLineEdit 单行文本输入框


QLineEdit用于输入一个单行文本,常用属性如下:

常用的信号函数如下:

6、ComboBox 组合框

双击组合框可以进行编辑


ComBox用于选择一个选项,功能类似于QRadioButton。
常用属性如下:

常用信号如下:

7、若干与数字相关的组件

以下组件都是数字相关。
这些组件有一些共同的属性和函数。

常用信号

cpp 复制代码
// value属性值发生改变时发射的信号
// 参数为当前的value值
void	valueChanged(int value)[signal]
相关推荐
t***5445 小时前
如何配置Orwell Dev-C++使用Clang
开发语言·c++
CoderCodingNo5 小时前
【信奥业余科普】C++ 的奇妙之旅 | 13:为什么 0.1+0.2≠0.3?——解密“爆int”溢出与浮点数精度的底层原理
开发语言·c++
EaseUI5 小时前
【Ease UI】2026-04-24 项目更新:增加多种风格登录页,增加菜单风格切换
ui
kongba0077 小时前
项目打包 Python Flask 项目发布与打包专家 提示词V1.0
开发语言·python·flask
froginwe117 小时前
C 语言测验
开发语言
极客智造7 小时前
深入详解 C++ 智能指针:RAII 原理、分类特性、底层机制与工程实战
c++·智能指针
今夕资源网7 小时前
powershell工具包 安装升级脚本并设置UTF-8 环境快捷方式创建 将powershell的编码默认改为UTF-8
开发语言·utf-8·powershell·utf-8编码·powershell7·powershell5·设置utf-8编码
机器视觉知识推荐、就业指导8 小时前
Qt:真正的门槛不是入门,而是维护
开发语言·qt
hhb_6188 小时前
Dylan 语言核心特性与工程实践深度解析
开发语言·c#
王璐WL8 小时前
【C++】类的默认成员函数(上)
c++