我在python世界中非常新,我对命令行命令和gui命令有所了解。 我已经成功为Abaqus编写了一个有效的python脚本,现在我想在其中添加一些GUI,而不是每次都更改文本文件中的参数。
我发现了GUI Toolkit但似乎很难,原因有二:1)它似乎不便携; 2)我真的不喜欢别人写的代码,特别是因为大多数时候它添加了我不理解的东西并且给了我无法修复的错误,可能是因为GUI Toolkit界面不完整
这是我的问题。 我可以在abaqus上使用python tk GUI吗?是否有人尝试过并可以分享一些简单的代码。
感谢您的帮助
答案 0 :(得分:3)
我不是这个主题的专家,但我确实有为Abaqus编写插件的经验。
您可能希望了解如何使用RSG(Really Simple GUI)对话生成器。它位于Abaqus工具栏上的插件选项下。
RSG是一个基于Abaqus定制版FOX Toolkit构建GUI的GUI。与自己编程GUI相比,它是有限的,但有很多选项可用于创建一些有用的插件。我通常使用RSG开始编写插件来开发GUI的基本布局。如果我希望在GUI中包含未包含在RSG中的选项,我只需编辑RSG生成的python文件。
回答您关于是否可以在Abaqus中使用tk的原始问题;我在Abaqus中运行脚本,调用tk文件浏览器并且它已成功运行。我不明白为什么你不能使用FOX Toolkit注册插件,然后调用tk打开GUI。
希望这会有所帮助。我知道这是一个老问题,但反应很弱。另外,我知道在Abaqus脚本上找到好的帮助/信息是多么困难。
答案 1 :(得分:1)
内置的GUI模块使您可以完全访问CAE API,并且基于THE FOX GUI。如果您只是在做简单的用户提示,那么内置的用户输入功能允许简单的弹出窗口,而不需要编写GUI的麻烦。函数返回用户输入列表或True / False,具体取决于函数。它们仅限于文本IO,但对大多数简单UI都有用。
查看52.5的脚本用户手册: 例如: 单输入:
yournumber=getInput('Enter a number:')
多输入:
yourInputs=getInputs(fields=('NODES', 'ELEMENTS'), dialogTitle='INPUT SOME ELEMENTS AND NODES', label='here is the label on the prompt box')
input1=yourInputs[0]
input2=yourInputs[1]
是/否/警告:
yourAnswer=getWarningReply('Out of disk space!\nOkay to continue', (YES,NO))
if yourAnswer==YES:
do some stuff
elif yourAnser==NO:
do some other stuff
答案 2 :(得分:0)
我已经使用了与Abaqus的tk GUI,但我发现他们并没有那么好,并最终导致各种奇怪的错误(例如忽略文本输入,窗口悬挂等)。如果你已经习惯了FX& amp; AFX例程。我不知道RSG,只是快速玩,喜欢它。