前言:

欢迎进入 QT 控件世界的第十二讲!在上一讲《QT 第十一讲 --- 控件篇 LCDnumber,ProgressBar与CalenderWidget》中,我们探索了用于信息展示状态反馈的控件:精准的数字显示器 LCD Number、直观的进度指示器 ProgressBar 以及便捷的日期选择器 Calendar Widget。这些控件让我们的界面具备了清晰展示数据和状态的能力。

今天,我们将聚焦于用户与应用程序交互的核心环节:信息输入!本讲的主角是三大输入控件:Line Edit(单行输入框)Text Edit(多行富文本编辑框) 和 Combo Box(下拉框)。它们是用户向程序传递文本、选项信息的主要通道。我们将深入探讨:

  1. Line Edit 精讲:作为最基础的单行文本输入框 (Text),我们将学习其关键属性(如 MaxLength 限制输入长度),并通过实际代码 (LineEdit) 演示如何收集用户信息(如个人信息)。重点理解 objectName 在代码访问中的作用。更重要的是,我们将掌握强大的输入验证技术:

    • 使用正则表达式 (Regex) 实时约束输入格式(如邮箱、电话)。

    • 实现输入验证器 (Validator),确保数据合法性(例如验证两次输入的密码是否一致)。

    • 实现密码显示切换功能,讲解 echoMode 属性和相关信号。

  2. Text Edit 探索:升级到功能强大的多行富文本编辑器。我们将演示其支持的三种文本格式(纯文本、富文本、Markdown),讲解其核心属性与常用信号,了解其与 Line Edit 的适用场景差异。

  3. Combo Box 应用:学习两种构建下拉选择框的方式(静态添加项 vs 动态加载)。我们将通过一个生动的“模拟麦当劳点餐”案例来实践:

    • 理解文件读写(I/O)操作,实现从文件加载菜单项。

    • 探索网络加载数据的可能性(概念引入)。

    • 处理选择项与数据模型之间的字符串转换问题

掌握这些输入控件及其验证机制,是构建健壮、用户友好 GUI 应用的关键一步!让我们开始学习如何高效、安全地捕获用户输入。


一、LineEdit


二、TextEdit


三、ComboBox


总结:

至此,我们对 QT 中三大核心输入控件 Line EditText Edit 和 Combo Box 有了全面的认识和实践。我们不仅掌握了它们的基础属性和使用方法(如设置 MaxLength、理解 objectName 的作用、使用 Combo Box 构建下拉菜单),更深入学习了保障输入数据质量的关键验证技术:包括利用正则表达式进行格式过滤、使用验证器实现复杂逻辑(如密码一致性校验)、以及灵活切换 Line Edit 的密码显示模式。

在下一讲《QT 第十三讲 --- 控件篇 SpinBox,DateTimeEdit,Dial与Slider》中,我们将转向另一类重要的输入控件:数值和范围调节器。我们将学习用于输入整数的 Spin Box 和浮点数的 Double Spin Box,用于选择日期时间的 Date/Time Edit,以及通过旋钮 (Dial) 和滑块 (Slider) 进行直观范围调节的控件。这些控件在处理数值、时间选择和连续量调节时不可或缺。

我们下期见!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/87803.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/87803.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/87803.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VSCode遇到的一些小毛病(自动保存、运行后光标不再处于编辑区)

1. 右键点击Run Code没有触发自动保存 1. 打开 VS Code 设置(Ctrl ,) 2. 搜索:code runner save 3. 勾选你需要的 2. 运行后光标仍然处于编辑区(容易误输入) 1. 打开 VS Code 设置(Ctrl ,) 2.…

Maixcam的使用2

1.单文件和项目(多个 py 文件项目/模块化)# 在编写代码时,一般两种模式,执行单个文件,或者执行一个完成项目(包含多个 py 文件或者其它资源文件)。 单文件模式:MaixVision 创建或者…

征信系统架构思想:打造商业信任基石_东方仙盟—仙盟创梦IDE

一、建设必要性在复杂的商业环境中,企业面临多元交易对象与业务场景,准确评估合作方信用状况及潜在价值的难度显著增加。传统经验判断和简单背景调查存在局限性,难以满足现代商业决策需求,因此构建科学的征信体系具有现实必要性。…

网安-XSS-pikachu

介绍 XSS,即跨站脚本攻击,是指攻击者利用Web服务器中的代码漏洞,在页面中嵌入客户端脚本(通常是一段由JavaScript编写的恶意代码),当信任此Web服务器的用户访问 Web站点中含有恶意脚本代码的页面&#xff…

算法入门——字典树(C++实现详解)

字典树(Trie)是处理字符串匹配的高效数据结构,广泛应用于搜索提示、拼写检查等场景。本文将带你从零掌握字典树的原理与实现! 一、什么是字典树? 字典树(Trie)是一种树形数据结构,…

SpringBoot整合SpringCache缓存

SpringBoot整合SpringCache使用缓存 文章目录SpringBoot整合SpringCache使用缓存1.介绍2.SpringBoot整合1.导入xml依赖2.配置yml3.使用EnableCaching启用SpringCache4.Cacheable5.CachePut6.CacheEvict7. Caching8.CacheConfig3.其他属性配置1.keyGenerator 属性2. cacheManage…

WPF学习笔记(20)Button与控件模板

Button与控件模板一、 Button默认控件模板详解二、自定义按钮模板一、 Button默认控件模板详解 WPF 中的大多数控件都有默认的控件模板。 这些模板定义了控件的默认外观和行为,包括控件的布局、背景、前景、边框、内容等。 官方文档:https://learn.mic…

蓝天居士自传(1)

蓝天居士何许人? 蓝天居士是我的笔名,也可以说是号。就好像李白号青莲居士、欧阳修号六一居士一样。笔者本名彭昊 —— 一个有不少重名重姓者的名字。 笔者小的时候上语文课,无论是小学、初中抑或是高中,都会有鲁迅(…

短剧系统开发定制全流程解析:从需求分析到上线的专业指南

一、短剧行业数字化趋势与系统开发必要性在短视频内容爆发式增长的时代背景下,短剧作为一种新兴的内容形式正在迅速崛起。数据显示,2023年中国短剧市场规模已突破300亿元,用户规模达到4.5亿,年增长率超过200%。这一迅猛发展的市场…

getBoundingClientRect() 详解:精准获取元素位置和尺寸

getBoundingClientRect() 是 JavaScript 中一个强大的 DOM API,用于获取元素在视口中的精确位置和尺寸信息。它返回一个 DOMRect 对象,包含元素的坐标、宽度和高度等关键几何信息。 基本用法 const element document.getElementById(myElement); cons…

EXCEL 基础技巧

来源:WPS 官网 初步了解WPS表格-WPS学堂https://www.wps.cn/learning/course/detail/id/635.html 1、格式刷 1.1使用格式刷隔行填充颜色。 首先设置部分表格颜色,选中此区域,双击点击格式刷,然后选中其他表格区域。 这样就可以…

【RK3568 编译rtl8723DU驱动】

RK3568 编译rtl8723DU驱动 编译源码1.解压rtl8723du2.修改Makefile 验证1.加载模块2.开启wifi 在驱动开发中,驱动的编译与集成是实现设备功能的关键环节。本文聚焦于基于 RK3568 处理器平台编译 RTL8723DU WiFi/BT 二合一模块驱动的完整流程,涵盖源码编译…

基于Simulink的二关节机器人独立PD控制仿真

文章目录 理论模型仿真窗口控制函数目标函数仿真 本文是刘金琨. 机器人控制系统的设计与MATLAB仿真的学习笔记。 理论模型 对于二关节机器人系统,其动力学模型为 D ( q ) q C ( q , q ˙ ) q ˙ r D(q)\ddot qC(q,\dot q)\dot q r D(q)q​C(q,q˙​)q˙​r 式…

【技术架构解析】国产化双复旦微FPGA+飞腾D2000核心板架构

本文就一款基于飞腾D2000核心板与两片高性能FPGA的国产化开发主板进行技术解析,包括系统架构、主要硬件模块、关键接口及软件环境,重点阐述各子系统间的数据路径与协同工作方式,旨在为行业内同类产品设计与应用提供参考。 随着国产化要求的加…

Python 数据分析:计算,分组统计1,df.groupby()。听故事学知识点怎么这么容易?

目录1 示例代码2 欢迎纠错3 论文写作/Python 学习智能体1 示例代码 直接上代码。 def grpby1():xls "book.xls"df pd.DataFrame(pd.read_excel(xls, engine"xlrd"))print(df)"""序号 分类 销量0 1 文学 51 2 计算机…

【解决“此扩展可能损坏”】Edge浏览器(chrome系列通杀))扩展损坏?一招保留数据快速修复

引言 如果你想保留你的数据,敲重点:不要点击修复,不要修复,不要修复 在使用 Microsoft Edge 浏览器时,您可能会遇到扩展程序显示“此扩展程序可能已损坏”的提示,且启用按钮无法点击。这一问题让许多用户感…

AI专业化应用加速落地,安全治理挑战同步凸显

7月2日,2025全球数字经济大会在北京国家会议中心开幕。本届大会以“建设数字友好城市”为主题,聚焦数字技术对城市发展的影响。开幕式上,一首完全由AI生成的MV成为焦点——从歌词、谱曲、演唱到视频制作全流程AI生成,展现人工智能…

Python统一调用多家大模型API指南

随着大模型技术的快速发展,市场上出现了越来越多的LLM服务提供商,包括OpenAI、Anthropic、Google、百度、阿里云等。作为开发者,我们经常需要在不同的模型之间切换,或者同时使用多个模型来满足不同的业务需求。本文将详细介绍如何…

【ESP32】1.编译、烧录、创建工程

标题打开一个Hello world工程并烧录 点击环境搭建链接 遇到的问题: 1.ESP32在VSCODE中烧录代码时,跳出窗口,OPenOCD is not running ,do you want to launch it? 可能是OCD没安装,重新安装 ESP-IDF试一下,在终端命令窗…

调参——optuna

它基于贝叶斯优化(Bayesian Optimization)思想,通过构建一个概率模型来预测超参数组合的性能,从而高效地探索超参数空间。相比传统网格搜索(Grid Search)或随机搜索(Random Search)&…