【问题标题】:How to remove Mayavi toolbar in python using code如何使用代码在 python 中删除 Mayavi 工具栏
【发布时间】:2013-03-04 21:05:44
【问题描述】:

我在一个窗口中合并了几个 Mayavi 图(沿着 documentation 的行),如果我能摆脱所有这些中的工具栏会更好。虽然可以右键单击每个工具栏以使它们消失,但我想将它们编码为消失。像scene.hide_toolbar() 这样的命令将是理想的。我在 TraitsUI 包中进行了一些研究,但无济于事......有人知道如何让它消失吗?

【问题讨论】:

    标签: python hide toolbar mayavi


    【解决方案1】:

    您可以使用Handler 修改UI,以下代码适用于ETS_TOOLKIT=qt4。将DisableToolbarHandler 类添加到代码multiple_mlab_scene_models.py 中,并通过m.edit_traits(handler=DisableToolbarHandler()) 显示UI。

    class DisableToolbarHandler(Handler):
        def position(self, info):
            for name in ["scene1", "scene2"]:
                editor = info.ui.get_editors(name)[0]
                editor._scene._tool_bar.setVisible(False)
    
    m = MyDialog()
    m.edit_traits(handler=DisableToolbarHandler())
    

    窗口显示为:

    【讨论】:

    • 这就像一个魅力!知道如何删除单个图形的工具栏(例如,使用 mlab.figure() 创建的图形)吗?
    • 在一个图上,这很容易做到: fig = mlab.figure(1) fig.scene.scene_editor._tool_bar.setVisible(False)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-06
    • 2023-03-29
    • 1970-01-01
    • 2015-11-16
    相关资源
    最近更新 更多