【Qt】控件——Qt输入类控件、常见的输入类控件、输入类控件的使用、Line Edit、Text Edit、Combo Box、Spin Box
文章目录
- Qt
- 5. Qt显示类控件
- Line Edit
- Text Edit
- Combo Box
- Spin Box
- QDateTimeEdit
- Dial
- Slider
Qt

5. Qt显示类控件
Line Edit
QLineEdit 用于表示单行输入框。可以输入一段文本,但是不能换行。
| 属性 | 说明 |
|---|---|
| text | 输入框中的文本 |
| inputMask | 输入内容格式约束 |
| maxLength | 最大长度 |
| frame | 是否添加边框 |
| echoMode | 显示方式 |
| QLineEdit::Normal | 这是默认值,文本框会显示输入的文本 |
| QLineEdit::Password | 在这种模式下,输入的字符会被隐藏,通常用星号(*)或等号(=)代替 |
| QLineEdit::NoEcho | 在这种模式下,文本框不会显示任何输入的字符 |
| cursorPosition | 光标所在位置 |
| alignment | 文字对齐方式, 设置水平和垂直方向的对齐 |
| dragEnabled | 是否允许拖拽 |
| readOnly | 是否是只读的(不允许修改) |
| placeHolderText | 当输入框内容为空的时候, 显示什么样的提示信息 |
| clearButtonEnabled | 是否会自动显示出 “清除按钮” |
| 信号 | 说明 |
|---|---|
| void cursorPositionChanged(int old, int new) | 当光标位置改变时发出此信号。old参数表示先前的光标位置,new参数表示新的光标位置。 |
| void editingFinished() | 当按下返回键或回车键,或者行编辑失去焦点时,发出此信号。这通常表示用户已完成编辑。 |
| void returnPressed() | 当按下返回键或回车键时发出此信号。如果设置了验证器,验证通过后才能触发此信号。 |
| void selectionChanged() | 当选中的文本改变时,发出此信号。这可以用于检测用户是否选择了不同的文本片段。 |
| void textChanged(const QString &text) | 当QLineEdit中的文本改变时,发出此信号。text参数表示新的文本内容。这个信号对代码和用户输入的文本修改都会触发。 |
| void textEdited(const QString &text) | 当QLineEdit中的文本通过用户输入(而非代码修改)改变时,发出此信号。text参数表示新的文本内容。这个信号不会由代码对文本的修改触发。 |
-
代码示例:使用 QLineEdit 创建编辑框,并且用户输入信息可以回响。

-
setPlaceholderText():设置默认文字;setEchoMode(QLineEdit:: ):设置文字样式;setInputMask():设置文字格式。

- 连接槽函数,实现输入信息后的回响操作。

- 代码示例:判断两次输入信息是否一致。

- 使用 QString 接收文字并且进行判断。

Text Edit
QTextEdit 表示多行输入框。也是一个富文本 & markdown 编辑器。并且能在内容超出编辑框范围时自动提供滚动条。
| 属性 | 说明 |
|---|---|
| markdown | 输入框内持有的内容。支持 markdown 格式。能够自动的对 markdown 文本进行渲染成 html。 |
| html | 输入框内持有的内容。可以支持大部分 html 标签。包括 img 和 table 等。 |
| placeHolderText | 输入框为空时提示的内容。 |
| readOnly | 是否是只读的。 |
| undoRedoEnable | 是否开启 undo /redo 功能。按下 ctrl + z 触发 undo,按下 ctrl + y 触发 redo。 |
| autoFormating | 开启自动格式化。 |
| tabstopWidth | 按下缩进占多少空间。 |
| overwriteMode | 是否开启覆盖写模式。 |
| acceptRichText | 是否接收富文本内容。 |
| verticalScrollBarPolicy | 垂直方向滚动条的出现策略。 |
| Qt::ScrollBarAsNeeded | 根据内容自动决定是否需要滚动条。这是默认值。 |
| Qt::ScrollBarAlwaysOff | 总是关闭滚动条。 |
| Qt::ScrollBarAlwaysOn | 总是显示滚动条。 |
| horizontalScrollBarPolicy | 水平方向滚动条的出现策略。 |
| Qt::ScrollBarAsNeeded | 根据内容自动决定是否需要滚动条。这是默认值。 |
| Qt::ScrollBarAlwaysOff | 总是关闭滚动条。 |
| Qt::ScrollBarAlwaysOn | 总是显示滚动条。 |
| 信号 | 说明 |
|---|---|
| textChanged () | 文本内容改变时触发。 |
| selectionChanged () | 选中范围改变时触发。 |
| cursorPositionChanged () | 光标移动时触发。 |
| undoAvailable (bool) | 可以进行 undo 操作时触发。 |
| redoAvailable (bool) | 可以进行 redo 操作时触发。 |
| copyAvaiable (bool) | 文本被选中 / 取消选中时触发。 |
- 代码示例:在多行输入框中输入信息,可以显示到 QLabel 中。

- 建立连接关系。

- selectionChanged():是选中改变时触发的信号。

- 输入位置改变时触发cursorPositionChanged()信号。

-
按下ctrl+z触发undoAvailable()。

-
按下ctrl+y触发redoAvailable()。

- 选中文本时触发copyAvailable()。

Combo Box
QComboBox 表示下拉框。
| 属性 | 说明 |
|---|---|
| currentText | 当前选中的文本。 |
| currentIndex | 当前选中的条目下标。从 0 开始计算。如果当前没有条目被选中,值为 -1。 |
| editable | 是否允许修改。设为 true 时,QComboBox 的行为就非常接近 QLineEdit,也可以设置 validator。 |
| iconSize | 下拉框图标(小三角)的大小。 |
| maxCount | 最多允许有多少个条目。 |
| 方法 | 说明 |
|---|---|
| addItem (const QString&) | 添加一个条目。 |
| currentIndex () | 获取当前条目的下标,从 0 开始计算。如果当前没有条目被选中,值为 -1。 |
| currentText () | 获取当前条目的文本内容。 |
| 信号 | 说明 |
|---|---|
| activated (int)、activated (const QString & text) | 当用户选择了一个选项时发出。这个时候相当于用户点开下拉框,并且鼠标划过某个选项,此时还没有确认做出选择。 |
| currentIndexChanged (int)、currentIndexChanged (const QString & text) | 当前选项改变时发出。此时用户已经明确地选择了一个选项。用户操作或者通过程序操作都会触发这个信号。 |
| editTextChanged (const QString & text) | 当编辑框中的文本改变时发出(editable 为 true 时有效)。 |
-
addItem(QString)可以向 QComboBox 中添加选项。

-
连接槽函数。

Spin Box
使用 QSpinBox 或者 QDoubleSpinBox 表示 “微调框”, 它是带有按钮的输入框。可以用来输入整数 / 浮点数。通过点击按钮来修改数值大小。
| 属性 | 说明 |
|---|---|
| value | 存储的数值。 |
| singleStep | 每次调整的 “步长”。按下一次按钮数据变化多少。 |
| displayInteger | 数字的进制。例如 displayInteger 设为 10,则是按照 10 进制表示。设为 2 则为 2 进制表示。 |
| minimum | 最小值。 |
| maximum | 最大值。 |
| suffix | 后缀。 |
| prefix | 前缀。 |
| wrapping | 是否允许换行。 |
| frame | 是否带边框。 |
| alignment | 文字对齐方式。 |
| readOnly | 是否允许修改。 |
| buttonSymbol | 按钮上的图标。 |
| UpDownArrows | 上下箭头形式。 |
| PlusMinus | 加减号形式。 |
| NoButtons | 没有按钮。 |
| accelerated (加速的) | 按下按钮时是否为快速调整模式。 |
| correctionMode | 输入有误时如何修正。 |
| QAbstractSpinBox::CorrectToPreviousValue | 如果用户输入了一个无效的值(例如,在只能显示正整数的 SpinBox 中输入了负数),那么 SpinBox 会恢复为上一个有效值。例如,如果 SpinBox 的初始值是 1,用户输入了 -1(无效),然后 SpinBox 会恢复为 1。 |
| QAbstractSpinBox::CorrectToNearestValue | 如果用户输入了一个无效的值,SpinBox 会恢复为最接近的有效值。例如,如果 SpinBox 的初始值是 1,用户输入了 -1(无效),那么 SpinBox 会恢复为 0。 |
| keyboardTrack | 是否开启键盘跟踪。设为 true,每次在输入框输入一个数字,都会触发一次 valueChanged () 和 textChanged () 信号。设为 false,只有在最终按下 enter 或者输入框失去焦点,才会触发 valueChanged () 和 textChanged () 信号。 |
| 信号 | 说明 |
|---|---|
| textChanged (QString) | 微调框的文本发生改变时会触发。参数 QString 带有前缀和后缀。 |
| valueChanged (int) | 微调框的文本发生改变时会触发。参数 int,表示当前的数值。 |
- 创建 QSpinBox 微调框。

QDateTimeEdit
使用 QDateTimeEdit 作为时间日期的微调框。
| 属性 | 说明 |
|---|---|
| dateTime | 时间日期的值。形如 2000/1/1 0:00:00。 |
| date | 单纯日期的值。形如 2001/1/1。 |
| time | 单纯时间的值。形如 0:00:00。 |
| displayFormat | 时间日期格式。形如 yyyy/M/d H:mm。y 表示年份。M 表示月份。d 表示日期。H 表示小时。m 表示分钟。s 表示秒。 |
| minimumDateTime | 最小时间日期。 |
| maximumDateTime | 最大时间日期。 |
| Qt::LocalTime | 显示本地时间。 |
| Qt::UTC | 显示协调世界时(UTC)。 |
| Qt::OffsetFromUTC | 显示相对于 UTC 的偏移量 (时差)。 |
- 创建 QDateTimeEdit 日期微调框。

Dial
使用 QDial 表示一个旋钮。
| 属性 | 说明 |
|---|---|
| value | 持有的数值。 |
| minimum | 最小值。 |
| maximum | 最大值。 |
| singleStep | 按下方向键的时候改变的步长。 |
| pageStep | 按下 pageUp/pageDown 的时候改变的步长。 |
| sliderPosition | 界面上旋钮显示的初始位置。 |
| tracking | 外观是否会跟踪数值变化。默认值为 true。一般不需要修改。 |
| wrapping | 是否允许循环调整。即数值如果超过最大值,是否允许回到最小值。(调整过程能否 “套圈”)。 |
| notchesVisible | 是否显示刻度线。 |
| notchTarget | 刻度线之间的相对位置。数字越大,刻度线越稀疏。 |
| 信号 | 说明 |
|---|---|
| valueChanged (int) | 数值改变时触发。 |
| rangeChanged (int, int) | 范围变化时触发。 |
- 创建一个旋钮 QDial 。

Slider
使用 QSlider 表示一个滑动条。
| 属性 | 说明 |
|---|---|
| value | 持有的数值。 |
| minimum | 最小值。 |
| maximum | 最大值。 |
| singleStep | 按下方向键的时候改变的步长。 |
| pageStep | 按下 pageUp/pageDown 的时候改变的步长。 |
| sliderPosition | 滑动条显示的初始位置。 |
| tracking | 外观是否会跟踪数值变化。默认值为 true。一般不需要修改。 |
| orientation | 滑动条的方向是水平还是垂直。 |
| invertedAppearance | 是否要翻转滑动条的方向。 |
| tickPosition | 刻度的位置。 |
| tickInterval | 刻度的密集程度。 |
| 信号 | 说明 |
|---|---|
| valueChanged (int) | 数值改变时触发。 |
| rangeChanged (int, int) | 范围变化时触发。 |
- 创建一个滑动条 QSlider 。

相关文章:
【Qt】控件——Qt输入类控件、常见的输入类控件、输入类控件的使用、Line Edit、Text Edit、Combo Box、Spin Box
文章目录 Qt5. Qt显示类控件Line EditText EditCombo BoxSpin BoxQDateTimeEditDialSlider Qt 5. Qt显示类控件 Line Edit QLineEdit 用于表示单行输入框。可以输入一段文本,但是不能换行。 属性说明text输入框中的文本inputMask输入内容格式约束maxLength最大长度…...
单臂交换知识点
要求:pc1要与pc2 ping通 命令: LSW1命令解析: system-view: 这个命令用于进入交换机的全局配置模式。在这个模式下,用户可以配置设备的全局设置。 vlan batch 10 20: 创建VLAN 10和VLAN 20。VLAN(虚拟局域网&#x…...
CentOS7 上安装GitLab的经历
一、安装必要的基础环境 1.安装依赖包 [rootgitlab-server ~]#yum install curl policycoreutils openssh-server openssh-clients postfix wget git patch -y [rootgitlab-server ~]# systemctl start postfix 2.配置yum源(由于网络问题,国内用户请使用清华大学…...
用python-pptx轻松统一调整演示文档配色方案
哈喽,大家好,我是木头左! 安装与准备:python-pptx入门 确保你的Python环境中已经安装了python-pptx库。如果没有,可以通过pip进行快速安装: pip install python-pptx此外,对于PPT文档的操作,了解一些基本的PowerPoint概念是有帮助的,比如幻灯片母版(Slide Master)…...
MySQL-30.索引-介绍
一.索引 为什么需要索引?当我们没有建立索引时,要在一张数据量极其庞大的表中查询表里的某一个值,会非常的消耗时间。以一个6000000数据量的表为例,查询一条记录的时间耗时约为13s,这是因为要查询符合某个值的数据&am…...
6-2.Android 对话框之基础对话框问题清单(UI 线程问题、外部取消、冲突问题、dismiss 方法与 hide 方法)
对话框 对话框(Dialog)是一种常用的 UI 组件,它主要用于显示信息、接收用户操作反馈 对话框可以包含各种元素,但是主要还是以文本、按钮为主,其次是列表 其中,基础对话框是 Android 中最简单的对话框&…...
git配置以及如何删除git
你努力学习和充实自己,除了提升自身的价值,最实际的是当遇到有喜欢的人和事的时候,除了一片真心,还有拿得出手的东西 作用 记录开发的历史,每次记录就是一个版本,而且可以回到历史的某个版本可以实现多人合…...
深入理解new Function
基础语法 let func new Function([arg1,arg2,arg3,...argN],functionBody)函数是通过使用参数 arg1…argN 和给定的 functionBody 创建。 调用 Function 时可以使用或不使用 new,两者都会创建一个新的 Function 实例 举例1: 带有两个参数的函数 let sum new Fun…...
服务器训练神经网络必备工具Screen使用教程
使用服务器训练网络时,不敢关闭终端窗口?用screen~ 服务器训练神经网络必备工具Screen使用教程 使用服务器训练网络时,不敢关闭终端窗口?用screen~一、Screen常用命令1. 启动新会话2. 重新连接会话3. 列出所有会话4. 窗口管理5. 断…...
跨越数字鸿沟,FileLink文件摆渡系统——您的数据安全高效传输新选择
在这个信息爆炸的时代,数据的流通与共享已成为推动各行各业发展的关键力量。然而,随着数据量的激增,如何在保证数据安全的前提下,实现高效、便捷的文件传输,成为了众多企业和个人用户面临的重大挑战。正是在这样的背景…...
递归之吃桃问题
题目如下: XXX买了一堆桃子不知道个数,第一天吃了一半的桃子,还不过瘾,又多吃了一个。以后他每天吃剩下的桃子的一半还多一个,到 n 天只剩下一个桃子了。XXX想知道一开始买了多少桃子。 首先我们看到题目就应该想边界…...
CZX前端秘籍2
vue生命周期( 组件从创建到销毁的过程就是它的生命周期) 创建前 beforeCreat( 在这个阶段属性和方法都不能使用) 创建时 created( 这里时实例创建完成之后, 在这里完成了数据监测, 可以使用数…...
CAD图纸防泄密用什么加密软软件?2024年10款图纸加密软件排行榜
在当今数字化时代,企业对于CAD图纸的保护越来越重视,因为图纸往往包含着公司的核心技术和商业机密。选择合适的加密软件对于防止数据泄露、维护企业利益至关重要。以下是2024年10款备受推崇的CAD图纸加密软件排行榜,帮助您更好地保护您的设计…...
WebGL编程指南 - WebGL入门
初识绘图流程、缓冲区、着色器、attribute和uniform变量 先画一个蓝色的正方形 html代码: <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content&…...
mysql--数据类型
目录 搞定所有数据类型 一、常见数据类型分类 二、数值类型 1、bit类型 2、float类型 编辑3、decimal类型 4、字符类型 (1)char (2)varchar (3)varchar和char有甚区别? ࿰…...
代码随想录第40天|
#include <bits/stdc.h> using namespace std;vector<list<int>> graph; // 删除局部 graph,使用全局 graph vector<vector<int>> res; vector<int> path; int N, M;void dfs(int index) {if (index N) {res.push_back(path);…...
Turn-it:优化线材重构雕塑制造
🐨文章摘要abstract 电线雕塑在工业应用和日常生活中都很重要。 本文提出了一种新的制造策略,通过调整目标形状以适应电线弯曲机,然后由人工将其弯曲回目标形状。(机器弯曲人工弯曲) 该方法通过两阶段弯曲策略实现&a…...
微深节能 堆取料机动作综合检测系统 格雷母线
微深节能的堆取料机动作综合检测系统结合了格雷母线定位系统,是工业自动化领域的一项重要创新。该系统通过集成多种传感器和控制设备,实现对堆取料机的全面监控和精确控制,包括位置、速度、力度、振动以及工作状态等。格雷母线定位系统作为一…...
【JAVA面试题】什么是Springboot的自动配置以及注意事项
文章目录 强烈推荐核心概念:自动配置的关键特点:示例: 需要注意的点1.默认配置可能不适合所有场景2.Bean 冲突与覆盖3.应用启动慢的问题4.过度依赖自动配置5.安全性问题6.依赖冲突与版本兼容7.过多不必要的自动配置8.调试困难 专栏集锦 强烈推…...
华为鸿蒙开发笔记
记在前面 官方文档链接 因无法直接使用chatgpt进行编程(悲,2024/10),故记录笔记,方便查阅,基于arkts语言 DevEco 中文 deveco是默认有中文包的,所以在市场里面搜不错,而应该在已安装里面搜索,然后启用就行了 测试 对ts进行单独测试 打开entry/src/test/LocalUnit.test.…...
8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...
线程同步:确保多线程程序的安全与高效!
全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分ÿ…...
【位运算】消失的两个数字(hard)
消失的两个数字(hard) 题⽬描述:解法(位运算):Java 算法代码:更简便代码 题⽬链接:⾯试题 17.19. 消失的两个数字 题⽬描述: 给定⼀个数组,包含从 1 到 N 所有…...
系统设计 --- MongoDB亿级数据查询优化策略
系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...
【决胜公务员考试】求职OMG——见面课测验1
2025最新版!!!6.8截至答题,大家注意呀! 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:( B ) A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...
nnUNet V2修改网络——暴力替换网络为UNet++
更换前,要用nnUNet V2跑通所用数据集,证明nnUNet V2、数据集、运行环境等没有问题 阅读nnU-Net V2 的 U-Net结构,初步了解要修改的网络,知己知彼,修改起来才能游刃有余。 U-Net存在两个局限,一是网络的最佳深度因应用场景而异,这取决于任务的难度和可用于训练的标注数…...
【Veristand】Veristand环境安装教程-Linux RT / Windows
首先声明,此教程是针对Simulink编译模型并导入Veristand中编写的,同时需要注意的是老用户编译可能用的是Veristand Model Framework,那个是历史版本,且NI不会再维护,新版本编译支持为VeriStand Model Generation Suppo…...
32单片机——基本定时器
STM32F103有众多的定时器,其中包括2个基本定时器(TIM6和TIM7)、4个通用定时器(TIM2~TIM5)、2个高级控制定时器(TIM1和TIM8),这些定时器彼此完全独立,不共享任何资源 1、定…...
6.9-QT模拟计算器
源码: 头文件: widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QMouseEvent>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widget(QWidget *parent nullptr);…...
客户案例 | 短视频点播企业海外视频加速与成本优化:MediaPackage+Cloudfront 技术重构实践
01技术背景与业务挑战 某短视频点播企业深耕国内用户市场,但其后台应用系统部署于东南亚印尼 IDC 机房。 随着业务规模扩大,传统架构已较难满足当前企业发展的需求,企业面临着三重挑战: ① 业务:国内用户访问海外服…...
