Python 如何使用Enthught工具套件为HasTraits类创建用户界面

Python 如何使用Enthught工具套件为HasTraits类创建用户界面,python,traits,enthought,traitsui,Python,Traits,Enthought,Traitsui,我有两个班,一个是儿童班。 本案: view =View( VGroup( HGroup( Label(u' '), Item( "bt_import", label=' ' ), Item( "bt_export", label=' ' ), show_left

我有两个班,一个是儿童班。 本案:

  view =View(
    VGroup(
        HGroup(
            Label(u' '),
            Item(
                "bt_import", label=' '
            ),
            Item(
                "bt_export", label=' '
            ),
            show_left=False
        ),
        HGroup(
            Label(u' '),
            Item(
                "signalplot",
                editor=ComponentEditor(size=(600, 300)),
                show_label=False
            ),
            Label(u' '),
        ),
        HGroup(
            Label(u' '),
            Item(
                "spectrumplot",
                editor=ComponentEditor(size=(600, 300)),
                show_label=False
            ),
            Label(u' '),
        ),
   ),
    width=600,
    height=800,
    resizable=False,
    title=u"FFT 过滤"
)

在这里,我会放两个班。signalplot您要查找的模式如下:

class MySignalSpectrumView(HasTraits):
    sig = Instance(Signal)
    spec = Instance(Spectrum)

if __name__ == "__main__":
    mssv = MySignalSpectrumView()
    mssv.configure_traits(view=view)
也就是说,您正在模型类上调用
edit_traits
configure_traits
,并将要使用的视图传递给它。 定义
traits\u view=view(…)
将提供默认使用的视图。
文档和演示目录中有很多很好的例子,其中包括Traits、TraitsUI和Chaco。

。但它是由错误产生的。换句话说,mssv.configure_traits(view=view)不是excute。感谢确保
视图
信号
频谱
都已在该文件中定义或显式导入。您必须将错误回溯发布到该问题,或者自己查看回溯来解决问题。
class MySignalSpectrumView(HasTraits):
    sig = Instance(Signal)
    spec = Instance(Spectrum)

if __name__ == "__main__":
    mssv = MySignalSpectrumView()
    mssv.configure_traits(view=view)