我们正在尝试评估这个想法的可行性:
我们在建模程序中有相当深的 HasTraits 对象堆栈。例如,如果我们正在对两种 Material 进行建模,我们可以通过以下方式访问它们的各种属性:
Layer.Material1.Shell.index_of_refraction
Layer.Material5.Medium.index_of_refraction
我们使用此代码进行模拟,其中我们仅增加特征的值。例如,我们可以运行一个模拟,其中一种 Material 的折射率在 10 次迭代中从 1.3 变化到 1.6。它实际上运行得很好。
问题在于选择模拟所需的特征。用户不会知道所有这些特征变量名称,因此我们希望呈现程序的整个特征结构的层次/ TreeView 。对于上述两个特征,它可能看起来像:
Layer
- Material1
- Shell
- index_of_refraction
- Material2
- Medium
- index_of_refraction
等等...
我知道traitsui支持TreeEditors,但是有没有像这样基于HasTraits堆栈的检查构建TreeEditor的示例?从对象获取特征堆栈的最直接方法是什么?本质上,这个想法是否可行,或者我应该重新开始?
谢谢
最佳答案
ValueEditor
做这个。您可以在此处查看它如何配置 TreeEditor
来执行此操作:
https://github.com/enthought/traitsui/blob/master/traitsui/value_tree.py
关于python - 检查 TreeView 的特征堆栈?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27949392/