|
楼主 |
发表于 2024-12-7 05:23:14
|
显示全部楼层
本帖最后由 竹永玉 于 2024-12-7 05:27 编辑
最终通过拦截“内容改变”并将输文件内容进行正则表达式判断完成预期功能,但是总感觉稍微不太优雅,希望有大神可以给出更合理的方案,我实现的源码贴出来供大家参考。
- 函数 文本型 限制文本输入(文本型 原文本, 逻辑型 移除数字 = 假, 逻辑型 移除小写字母 = 假, 逻辑型 移除大写字母 = 假, 逻辑型 移除双字节字符 = 假, 逻辑型 移除符号 = 假, 文本型 其他规则 = "")
- 正则表达式类 正则
- 文本型 正则规则
- 如果 (移除数字)
- 正则规则.添加("|[0-9]")
- 如果 (移除小写字母)
- 正则规则.添加("|[a-z]")
- 如果 (移除大写字母)
- 正则规则.添加("|[A-Z]")
- 如果 (移除双字节字符)
- 正则规则.添加(R"(|[^\x00-\xff])")
- 如果 (移除符号)
- 正则规则.添加(R"(|\S|\s)")
- 如果 (其他规则 != "")
- 正则规则.添加("|" + 其他规则)
- 如果 (正则规则 == "")
- 返回 原文本
- 否则
- 正则规则.删除(0, 1)
- 正则规则.添加("+")
- 调试输出(正则规则)
- 正则.创建(正则规则, 原文本, 真, 真, 真)
- 返回 正则.替换("")
- 函数 UI事件 整型 产品名称组合框_内容改变(元素句柄 来源句柄, 逻辑型 *是否拦截)
- 文本型 内容 = 编辑框_取文本_临时(来源句柄)
- 文本型 W = 限制文本输入(内容,,,, 真,)
- 编辑框_置文本(来源句柄, W)
- 返回 0
复制代码
--------------------
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|