科学计算三维可视化---TraitsUI(控件)

Posted ssyfj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了科学计算三维可视化---TraitsUI(控件)相关的知识,希望对你有一定的参考价值。

一:文本编辑器

技术分享图片

技术分享图片

 

from traits.api import HasTraits,Int,Str,Password
from traitsui.api import View,Item,Group,ModalButtons
#View描述了界面的视图类,Item模块描述了界面中的控件类

class TextEdit(HasTraits):
    #定义文本编辑器的变量
    string_trait = Str("sample string")
    password = Password
    #定义布局
    text_str_group = Group(
        Item("string_trait",style="simple",label="Simple"),  #value,style,label
        Item("_"),  #分割线
        Item("string_trait", style="custom", label="Custom"),
        Item("_"),
        Item("password", style="simple", label="password"),
    )

    #定义视图
    traits_view = View(
        text_str_group,
        title = "TextEditor",
        buttons = [OK]
    )

text = TextEdit()
text.configure_traits()

 

技术分享图片

二:按钮控件

技术分享图片

技术分享图片

技术分享图片

from traits.api import HasTraits,Int,Button
from traitsui.api import View
#View描述了界面的视图类,Item模块描述了界面中的控件类


class ButtonEditor(HasTraits):
    my_button = Button(u"点击我")
    counter = Int

    def _my_button_fired(self):
        self.counter += 1

    traits_view = View(
        my_button,
        counter,
        title = "ButtonEditor",
        buttons = [ok],
        resizable = True
    )

button = ButtonEditor()
button.configure_traits()

 

技术分享图片

三:滑动条

技术分享图片

技术分享图片

技术分享图片

 

from traits.api import HasTraits,Range,Property,property_depends_on,Int
from traitsui.api import View,Item,RangeEditor
#View描述了界面的视图类,Item模块描述了界面中的控件类

class RangeDemo(HasTraits):
    a = Range(1,10)
    b = Range(1,10)
    c = Property(Int)

    view = View(
        Item(a),
        Item(b),
        Item("_"),
        Item("c",editor=RangeEditor(low=1,high=20,mode="slider")),  #将c声明为一个滚动条
        Item("c"),
        width = 0.3
    )

    @property_depends_on([a,b],settable=HasTraits)  
    def _get_c(self):  #两个c都会修改
        return self.a + self.b

ran = RangeDemo()
ran.configure_traits()

技术分享图片

 

 四:菜单和工具栏

技术分享图片

其他控件列表:

技术分享图片技术分享图片技术分享图片

 

以上是关于科学计算三维可视化---TraitsUI(控件)的主要内容,如果未能解决你的问题,请参考以下文章

科学计算三维可视化---TraitsUI与Mayavi实例

科学计算三维可视化---TraitsUI(View定义界面)

第一周三维可视之基础运用 测验 Python科学计算三维可视化

科学计算三维可视化---Mayavi可视化实例

科学计算三维可视化---Traits(Property属性)

科学计算三维可视化---TVTK入门(数据加载)