Qt6 QML RegularExpressionValidator 输入中文的坑

本人最近使用Qt6.7.2编译CMAKE项目,主风格qml ,但在用TextField{}时却遇到了问题,

原本要求,编辑框只能输入中文汉字,

一听,很简单嘛,正则表达式:

一看,没毛病,老铁,但是,却达不到想要的效果,编辑框输入时,根本输入不了汉字,会一直报错:

QRegularExpressionPrivate::doMatch(): called on an invalid QRegularExpression object (pattern is '\A(?:^[\u4e00-\u9fa5]+$)\z')

QRegularExpressionPrivate::doMatch(): called on an invalid QRegularExpression object (pattern is '\A(?:^[\u4e00-\u9fa5]+$)\z')

QRegularExpressionPrivate::doMatch(): called on an invalid QRegularExpression object (pattern is '\A(?:^[\u4e00-\u9fa5]+$)\z')

QRegularExpressionPrivate::doMatch(): called on an invalid QRegularExpression object (pattern is '\A(?:^[\u4e00-\u9fa5]+$)\z')..................

这是为何呢?

废话不多说,

原因:[QTBUG-116808] QML does not handle regular expression as expected - Qt Bug Tracker

真正可行的是:

regularExpression: /^[\N{U+4e00}-\N{U+9fa5}]+$/

即:

搞定,

看来真正阻碍自己脚步的,并不是远处的高山,而是鞋里的一粒沙子......

相关推荐
酷飞飞18 小时前
Qt Designer与事件处理
开发语言·qt·命令模式
mkhase20 小时前
9.12-QT-基本登陆界面实现
java·jvm·qt
咕噜咕噜啦啦20 小时前
Qt之快捷键、事件处理、自定义按键——完成记事本项目
开发语言·qt
Quz21 小时前
QML Charts组件之折线图的鼠标交互
qt
眠りたいです1 天前
基于脚手架微服务的视频点播系统-数据管理与网络通信部分的预备工作
c++·qt·ui·微服务·云原生·架构·媒体
bikong71 天前
Qt/C++,windows多进程demo
c++·windows·qt
油炸自行车1 天前
【Qt】Window环境下搭建Qt6、MSVC2022开发环境(无需提前安装Visual Studio)
qt·visual studio·qt6·msvc2022·qt creator 17.0
枫叶丹41 天前
【Qt开发】显示类控件(三)-> QProgressBar
开发语言·qt
姓刘的哦1 天前
Qt中的QWebEngineView
数据库·c++·qt
SundayBear1 天前
QT零基础入门教程
c++·qt