使用Group对象组织界面

将一组相关的Item对象组织在一起
from traitsui.api import Group

from traits.api import HasTraits,Int,Str
from traitsui.api import View,Item,Group
#View描述了界面的视图类,Item模块描述了界面中的控件类 class ModelManager(HasTraits):
model_name = Str
category = Str
model_file = Str
model_number = Int
vertices = Int view1 = View(
Group(
Item("model_name", label=u"模型名称"),
Item("model_file", label=u"文件名"),
Item("category", label=u"模型类型"),
label=u"模型信息",
show_border=True
),
Group(
Item("model_number", label=u"模型数量"),
Item("vertices", label=u"顶点数量"),
label=u"统计数据",
show_border=True
),
) model = ModelManager()
model.configure_traits()

    view1 = View(
Group(  
Group(
Item("model_name", label=u"模型名称"),
Item("model_file", label=u"文件名"),
Item("category", label=u"模型类型"),
label=u"模型信息",
show_border=True
),
Group(
Item("model_number", label=u"模型数量"),
Item("vertices", label=u"顶点数量"),
label=u"统计数据",
show_border=True
),
)
)

    view1 = View(
Group(
Group(
Item("model_name", label=u"模型名称"),
Item("model_file", label=u"文件名"),
Item("category", label=u"模型类型"),
label=u"模型信息",
show_border=True
),
Group(
Item("model_number", label=u"模型数量"),
Item("vertices", label=u"顶点数量"),
label=u"统计数据",
show_border=True
),
orientation="horizontal"
),
)

Group派生类(对很多属性值进行默认设置)

    view1 = View(
HSplit(  #大布局水平
VGroup(  #小布局内部垂直
Item("model_name", label=u"模型名称"),
Item("model_file", label=u"文件名"),
Item("category", label=u"模型类型"),
label=u"模型信息",
show_border=True
),
VGroup(
Item("model_number", label=u"模型数量"),
Item("vertices", label=u"顶点数量"),
label=u"统计数据",
show_border=True
),
orientation="horizontal"
),
)

内外部视图

from traits.api import Property,HasTraits,Float,cached_property,Int,Str,Event,on_trait_change
from traitsui.api import View,Item,Group,HSplit,VGroup
#View描述了界面的视图类,Item模块描述了界面中的控件类 g1 = [
Item("model_name", label=u"模型名称"),
Item("category", label=u"模型类型"),
]
g2 = [
Item("model_number", label=u"模型数量"),
Item("vertices", label=u"顶点数量"),
] class ModelManager(HasTraits):
model_name = Str
category = Str
model_number = Int
vertices = Int traits_view = View(
Group(*g1,label=u"模型信息",show_border=True),
Group(*g2,label=u"统计数据",show_border=True),
title=u"内部视图"
) global_view = View(
Group(*g1,label=u"模型信息",show_border=True),
Group(*g2,label=u"统计数据",show_border=True),
title=u"外部视图"
) model = ModelManager()
>>> model.configure_traits()  #默认是内部视图

>>> model.configure_traits(view="traits_view")  #有选择的选中某个内部视图

>>> model.configure_traits(view=global_view)  #直接将外部视图赋给view

科学计算三维可视化---TraitsUI(Group对象组织界面)的更多相关文章

  1. 科学计算三维可视化---TraitsUI的介绍

    TraitsUI的介绍 Python中存在Tkinter,wxPython,pyQt4等GUI图像界面编写库,这三类库要求程序员掌握众多的GUI API函数 对于科学计算的应用来说,我们希望可以快速的 ...

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

    TraitsUI与Mayavi实例 一:创建一个简单的TraitsUI与Mayavi实例 from numpy import sqrt,sin,mgrid from traits.api import ...

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

    一:文本编辑器 from traits.api import HasTraits,Int,Str,Password from traitsui.api import View,Item,Group,M ...

  4. 科学计算三维可视化---TraitsUI(配置视图)

    配置视图 模态窗口: from traits.api import HasTraits,Int,Strclass ModelManager(HasTraits): model_name = Str c ...

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

    View定义界面 使用View来自定义界面 class ModelManager(HasTraits): model_name = Str category = Str model_file = St ...

  6. Python科学计算三维可视化(整理完结)

    中国MOOC<Pyhton计算计算三维可视化>总结 课程url:here ,教师:黄天宇,嵩天 下文的图片和问题,答案都是从eclipse和上完课后总结的,转载请声明. Python数据三 ...

  7. 科学计算三维可视化---Mlab基础(鼠标选取交互操作)

    一:鼠标选取介绍 二:选取红色小球分析 相关方法:科学计算三维可视化---Mlab基础(基于Numpy数组的绘图函数) 1.小球场景初始化建立 import numpy as np from maya ...

  8. 科学计算三维可视化---Mlab基础(数据可视化)

    推文:科学计算三维可视化---TVTK库可视化实例 使用相关函数:科学计算三维可视化---Mlab基础(管线控制函数) 一:mlab.pipeline中标量数据可视化 通过持续实例,来感受mlab对数 ...

  9. 科学计算三维可视化---Mlab基础(管线控制函数)

    科学计算三维可视化---TVTK管线与数据加载(可视化管线和图像管线了解) 科学计算三维可视化---Mayavi入门(Mayavi管线) Mlab管线控制函数的调用 Sources:数据源 Filte ...

随机推荐

  1. 四则运算App--大总结(已完成)

    1. 贡献分分配(20分) 欧泽波:14分,Android的学习,代码的编写,等等 杨洁华:1分,提供学习资料,框架的设计等等 赵泽嘉:3分,提供学习资料,框架的设计等等 林扬滨:2分,提供学习资料, ...

  2. 牛客网国庆集训派对Day4题目 2018年

    链接:https://www.nowcoder.com/acm/contest/204/A来源:牛客网 深度学习 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 1048576K,其他 ...

  3. 浏览器播放rtmp流

    我是利用flash插件实现的,需要以下几个文件: flowplayer-3.2.8.min.js flowplayer-3.2.18.swf flowplayer.rtmp-3.2.8.swf flo ...

  4. java杂项

    简单介绍==和equals区别==是判断两个变量或实例是不是指向同一个内存空间equals是判断两个变量或实例所指向的内存空间的值是不是相同 final, finally, finalize的区别fi ...

  5. php推送

    需求: 我想做个会员站内通知的功能.不想用以前的ajax查询,听说有个推技术.以下文章介绍的不错,来自转载, ============================================= ...

  6. Nginx和Apache区别

    Nginx VS  Apache 相同点: 1.都是HTTP服务器软件 2.功能上都采用模块化结构设计 3.都支持通用的语言接口,如PHP.Perl.Python等 4.支持正向.反向代理.虚拟主机. ...

  7. Hibernate 注解之 @Temporal

    因为数据库中有个 Date类型的数据,在从数据库中获取数据[就是getXxx方法,当然,自动装配的时候可以直接写在字段上,但也只是针对getXxx方法,不会自动赋值]的时候可以利用这个 @Tempor ...

  8. Windows 配置Reids集群 Redis Cluster

    一 .所需软件:Redis.Ruby语言运行环境.Redis的Ruby驱动redis-xxxx.gem.创建Redis集群的工具redis-trib.rb 二 .安装配置redis  redis下载地 ...

  9. Trailing Zeroes (II) LightOJ - 1090(预处理+前缀和)

    求C(n,r)*p^q的后缀零 考虑一下 是不是就是求 10^k*m  的k的最大值 而10又是由2 和 5 组成  所以即是求 2^k1 * 5^k2 * m1 中k1和k2小的那一个数 短板效应嘛 ...

  10. oracle 月份中日的值必须介于 1 和当月最后一日之间

    解决方法: 1.用时间字段去关联字符串字段导致此错误.. 如果1.解决不了就看 2.把date'2017-01-01'  换成 to_date('2017-01-01','yyyy-mm-dd')