三分钟速学ABAQUS二次开发:界面数据验证技巧

前言:本文适用有一定ABAQUS插件开发的人员使用,话不多说,开始正题。

QQ截图20190223232407.jpg



以复合材料的材料属性“密度”一栏为例说明,我们输入一个负数,比如 -10,众所周知,一个材料的密度肯定不可能是负数,

QQ图片20190223232531.png



大家看到没有,立马弹出一个警告提示“复合材料密度必须为正数,请重新输入!”

这是怎么实现的呢?首先请小伙伴们创建一个这样的插件

(创建插件的办法网站见:https://blog.csdn.net/sinat_42856437/article/details/86703009)

QQ截图20190223233211.jpg



大家打开自己的插件目录,会看到生成这样3个.py文件,(.pyc文件在Python文件执行后生成的,假装看不到,不用管他)

QQ截图20190223233249.jpg

接下来我们打开“warning_plugin.py”文件,注意,大家如果给自己的插件名称名为为“xx”,那么就打开“xx_plugin.py”

QQ截图20190223233715.jpg



我们将第43行代码的“retrue True”删去,在“        pass”即第42行代码后面插入一串代码,,变成如下形式:

QQ截图20190223234115.jpg



这里需要注意两个点,首先“self.numKw”,中的num必须是在内核文件中定义的参数一样

QQ截图20190223234243.jpg



说白了,你想把哪个参数新增数据合法性验证,那就自动在这个参数后面加上个kw,然后照猫画虎,进行替换即可。

showAFXErrorDialog()----这是ABAQUS界面开发中的一个函数,其他参数不用管,重点在第二个参数,输入弹出的警告框提示内容,例如,你想弹出“ERROR!!!”,好,那就输入该字符串即可,但是要注意一点,你想显示汉字,必须首先汉化,汉化方法见其他教程,并且将汉字转换为GBK编码,才可以正常显示,有的脚本不转化也可以显示汉字,我也搞不懂,懂行的朋友可以教一下在下。

最终结果图如下:

QQ截图20190224000011.jpg

若输入正确数据,如“4E-005”

QQ截图20190224000106.jpg

最后总结一下:

  1. 首先创建一个插件
  2. 打开插件目录中的“XX_plugin.py”文件,找到doCustomChecks函数
  3. 删去最后一行的 return True
  4. 输入我刚刚写的代码

上述demo和GBK汉字互相转换代码已上传至GitHub,好用请星标哦~~

https://github.com/yechong316/ABAQUS-plugin.git

QQ截图20190224001441.jpg


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空