如何使用enthough工具为HasTraits类创建用户界面

2024-03-28 13:35:39 发布

您现在位置:Python中文网/ 问答频道 /正文

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

  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<;-信号类和spectrumplot<;-频谱类 两级:

class Signal(HasTraits):
     view = View()
.......

class Spectrum(HasTraits):
       view = View()
.......

这个案子,怎么搞两个班? 如何在接口中放置两个类?你知道吗


Tags: ltviewfalsesizeshowitemlabeleditor
1条回答
网友
1楼 · 发布于 2024-03-28 13:35:39

你要找的模式是:

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

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

也就是说,调用模型类上的edit_traitsconfigure_traits,并将要使用的视图传递给它。 定义traits_view = View(...)将提供默认情况下使用的视图。 在docs和demos目录中有很多很好的例子,其中包括Traits、TraitsUI和Chaco。你知道吗

相关问题 更多 >