[英]Defining view elements from dictionary elements in TraitsUI
Is there a way to reference items in a dictionary in traitsui views? 是否可以在traitsui视图中引用字典中的项目?
In other words, is there a way to do what I mean with the following, using a Dict trait: 换句话说,是否有一种方法可以使用Dict特性来完成以下操作:
from traits.api import *
from traitsui.api import *
from traitsui.ui_editors.array_view_editor import ArrayViewEditor
import numpy as np
class SmallPartOfLargeApplication(HasTraits):
a=Dict
def _a_default(self):
return {'a_stat':np.random.random((10,1)),
'b_stat':np.random.random((10,10))}
traits_view=View(
Item('a.a_stat',editor=ArrayViewEditor()))
SmallPartOfLargeApplication().configure_traits()
This worked from me. 这对我有用。
from traits.api import *
from traitsui.api import *
from traitsui.ui_editors.array_view_editor import ArrayViewEditor
import numpy as np
class DContainer(HasTraits):
_dict=Dict
def __getattr__(self, k):
if k in self._dict:
return self._dict[k]
class SmallPartOfLargeApplication(HasTraits):
d=Instance(DContainer)
def _d_default(self):
d=DContainer()
d._dict={'a_stat':np.random.random((10,1)),
'b_stat':np.random.random((10,10))}
return d
def traits_view(self):
v=View(
Item('object.d.a_stat',editor=ArrayViewEditor()))
return v
SmallPartOfLargeApplication().configure_traits()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.