首页
发现
课程
培训
文章
案例
问答
需求
服务
行家
赛事
热门搜索
发布
消息
注册
|
登录
首页
/
文章
/
详情
ACT开发指南|如何进行输入有效性验证
小田老师
4年前
浏览5897
关注
在仿真计算中,每个参数都是有界限或者满足既定规则的,比如说几何尺寸存在最大与最小值、零件的命名需按照规则等。所以,在使用进行流程封装时,就需要对用户输入进行判断,避免错误输入造成程序的异常终止。
今天,小田老师就以如下的简单案例,来给大家讲解
ACT
中进行输入有效性验证的方法。
针对如下
ACT
向导界面,我们考虑如下需求:
图
1
案例
XML
文件代码
NumberInput
为
float
输入控件,值需在区间
[10, 1000)
;
TextInput
为
text
输入控件,需以字符、数字和下划线组成,长度大于
6
。
当用户输入值不满足要求时,控件显示如下无效输入状态提示用户。
图
2 ACT Wizard
有效性验证
接下来,以上述开发需求为例,演示实现有效性验证的思路和具体步骤。
首先,啥都不了解时候,肯定是要去翻阅
ACT
帮助文档的;在《
ACT XML Reference
:
ACT XML Tags
》中,找到
<
property
>
标签下内容,我们会发现一个回调函数
<isvalid>
满足我们的要求,但是对于其使用的方法和示例,
ANSYS
并未提供,而是直接省略了.....
图
3 <IsValid>
回调函数帮助说明
这里忍不住吐槽下,帮助文档唯一的作用:就是让你觉得看帮助并没有什么卵用;希望官方多上点心,后续提高开发文档的可参考性。
既然官方没提供,就只好自助查找:通过反编译找到
<
IsValid
>
对应类的声明,可以发现回调函数需要传入
IUserObject
和
ISimProperty
参数,然后返回一个
bool
类型参数。
图
4 <IsValid>
对应类的声明
<
IsValid
>
对应回调函数模板如下,其中
step
代表
当前步骤
,
prop
代表
属性控件对
象,
valid_expression
表示输入
判断语句
。
图
5 <IsValid>
对应回调函数模板
然后,需要在
XML
文件中为
Number Input
和
Text Input
控件添加
<IsValid>
回调,并绑定事件函数
IsNumInputValid
和
IsTextInputValid
,如下:
图
6 property
定义
<IsValid>
回调
最后,在对应的
main.py
脚本中,我们需要实现
IsNumInputValid
和
IsTextInputValid
方法,即通过
prop.Value
获取用户输入值,进行值范围和规则判断,然后返回判断的真假,代码如下:
图
7
回调函数功能实现
完成以上几步操作,就可以实现有效性验证;但是从用户角度来看,交互并不友好,因为界面虽然显示输入无效,但是并没有提示什么数据是有效的。
解决办法
:可以在
XML
中为对应控件定义
<help>
子标签,给定标签对之间的帮助内容。
图
8
定义
property
帮助提示
这样定义之后,属性控件显示的时候,在其右边会多出帮助提示;用户体验也就上去了。
图
9 property
中帮助提示
以上,就是本期的所有内容!大家若有关于
ANSYS
二次开发相关的问题,欢迎下方留言参与讨论。
登录后免费查看全文
立即登录
代码&命令
二次开发
通用
流体基础
结构基础
Workbench
SpaceClaim
ACT
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2020-11-02
最近编辑:4年前
小田老师
硕士
|
仿真工程师
欢迎关注ANSYS仿真与开发!
关注
获赞 666
粉丝 3847
文章 62
课程 4
点赞
收藏
作者推荐
可试听
Python语言在ANSYS的应用10讲-掌握SCDM脚本封装及ACT向导开发
¥399
5.0
立即查看
0/200
清空
提交
1条评论
小恒
签名征集中
3年前
小田老师您好,请问您这篇文章里面涉及的反编译是针对pyd文件的么?方便告知下用什么方式实现的吗?
回复
2条回复
课程
培训
服务
行家
基于ANSYS WB平台的滑动轴承分析工具
数字化微课第二季 | 点阵结构设计与仿真优化及案例分享(第六讲)
2025科研创新仿真技术应用主题月-每次建模的构建都是突破的序章
相变材料(热存储)储热过程热输运特性仿真
相关推荐
电机CAE-CFD仿真深水区-动力学
仿真秀2022名企工程师招聘云讲堂8讲,对话HR、技术经理和企业负责人
LS-DYNA偏心不耦合的临自由面岩石双孔微差爆破(JH-2本构)
LS-DYNA的FEM-SPH自适应耦合法模拟SHPB霍普金森压杆动态压缩
最新文章
有限元仿真螺栓建模方法
【可下载】用Deepseek做了一个随机生成锂离子电池二维多孔电极COMSOL模型
从哪吒电影特效到工业制造:流体仿真的跨界应用
微波射频类专业应届毕业生如何提高就业市场的竞争力?
Workbench平台GUI二次开发入门系列——基本控件4
热门文章
应用于电动汽车的某型永磁同步电机电磁设计仿真分析
2023中国动力电池技术创新及发展趋势!
PFC6.0离散-有限耦合技术解决边坡边界效应所需颗粒(赠项目包)
Simufact Additive增材制造支撑创建功能
Comsol汽车空气动力学(CFD)仿真模拟
其他人都在看
利用VBA脚本自动实现VIAtoWire优化CST网格
mathcad笔记
数字化项目的经济性
车圈高层巨震!四个月内超50名高管大调整!
悬置系统的发展历程
VIP会员
学习计划
福利任务
下载APP
联系我们
微信客服
联系客服
人工服务时间为周一至周五的9:30-19:30
非工作时间请在微信客服留言
客服热线:
4000-969-010
邮箱:
service@fangzhenxiu.com
地址:
北京市朝阳区莱锦创意园CN08座
帮助与反馈
返回顶部