找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 213|回复: 3

请教编辑框如何控制输入数据的有效性?

[复制链接]

23

主题

29

回帖

190

积分

注册会员

积分
190
QQ
发表于 2024-12-5 18:29:48 | 显示全部楼层 |阅读模式
悬赏1金钱未解决
在其他编程软件中通常可以设置输入数据的有效性,比如限制只能输入数字或者只能输入大小写等等的,然而在炫彩界面库和IDE中没找到相应设置,请问这样的功能是需要自己额外编写代码实现的吗?

附件: 您需要 登录 才可以下载或查看,没有账号?立即注册

23

主题

29

回帖

190

积分

注册会员

积分
190
QQ
 楼主| 发表于 2024-12-7 05:23:14 | 显示全部楼层
本帖最后由 竹永玉 于 2024-12-7 05:27 编辑

最终通过拦截“内容改变”并将输文件内容进行正则表达式判断完成预期功能,但是总感觉稍微不太优雅,希望有大神可以给出更合理的方案,我实现的源码贴出来供大家参考。


  1.         函数 文本型 限制文本输入(文本型 原文本, 逻辑型 移除数字 = 假, 逻辑型 移除小写字母 = 假, 逻辑型 移除大写字母 = 假, 逻辑型 移除双字节字符 = 假, 逻辑型 移除符号 = 假, 文本型 其他规则 = "")
  2.                 正则表达式类 正则
  3.                 文本型 正则规则
  4.                 如果 (移除数字)
  5.                         正则规则.添加("|[0-9]")
  6.                 如果 (移除小写字母)
  7.                         正则规则.添加("|[a-z]")
  8.                 如果 (移除大写字母)
  9.                         正则规则.添加("|[A-Z]")
  10.                 如果 (移除双字节字符)
  11.                         正则规则.添加(R"(|[^\x00-\xff])")
  12.                 如果 (移除符号)
  13.                         正则规则.添加(R"(|\S|\s)")
  14.                 如果 (其他规则 != "")
  15.                         正则规则.添加("|" + 其他规则)
  16.                 如果 (正则规则 == "")
  17.                         返回 原文本
  18.                 否则
  19.                         正则规则.删除(0, 1)
  20.                         正则规则.添加("+")
  21.                         调试输出(正则规则)
  22.                         正则.创建(正则规则, 原文本, 真, 真, 真)
  23.                         返回 正则.替换("")
  24.         函数 UI事件 整型 产品名称组合框_内容改变(元素句柄 来源句柄, 逻辑型 *是否拦截)
  25.                 文本型 内容 = 编辑框_取文本_临时(来源句柄)
  26.                 文本型 W = 限制文本输入(内容,,,, 真,)
  27.                 编辑框_置文本(来源句柄, W)
  28.                 返回 0


复制代码




--------------------

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

50

主题

65

回帖

474

积分

超级版主

积分
474
发表于 2024-12-5 18:54:53 | 显示全部楼层
需要自己拦截输入事件来处理

23

主题

29

回帖

190

积分

注册会员

积分
190
QQ
 楼主| 发表于 2024-12-5 19:11:56 | 显示全部楼层
易团雪 发表于 2024-12-5 18:54
需要自己拦截输入事件来处理

好的感谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|炫语言 | 炫彩界面库 | 用户所需, 正是我所做! ( 鄂ICP备2023014763号-1 )

GMT+8, 2025-1-31 02:54 , Processed in 0.078372 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表