使用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. pycharm 打开两个项目

    1.之前用打开文件,选择一直选不到整个项目,打开也都是在已经打开的项目窗口中加载一个文件. 2.网上有介绍说设置,但是自己的pycharm经过中文汉化,许多设置项已消失不见... 3.最近打开,直接操 ...

  2. DPDK RX / TX Callbacks 源码阅读

    这个sample是基于basicfw的.basicfw就是一个网口收到的包立即从另一个网口转发出去,非常简洁明了的程序,可以通过basicfw学习基础的DPDK发包API.RX / TX Callba ...

  3. 学习率(Learning rate)的理解以及如何调整学习率

    1. 什么是学习率(Learning rate)?   学习率(Learning rate)作为监督学习以及深度学习中重要的超参,其决定着目标函数能否收敛到局部最小值以及何时收敛到最小值.合适的学习率 ...

  4. 6/9 sprint2 看板和燃尽图的更新

  5. XMind2TestCase:一个高效测试用例设计的解决方案!

    一.背景 软件测试过程中,最重要.最核心就是测试用例的设计,也是测试童鞋.测试团队日常投入最多时间的工作内容之一. 然而,传统的测试用例设计过程有很多痛点: 1.使用Excel表格进行测试用例设计,虽 ...

  6. [转帖]高通推出八核笔电处理器骁龙8cx 能超英特尔吗?

    高通推出八核笔电处理器骁龙8cx 能超英特尔吗? https://baijiahao.baidu.com/s?id=1619154699684981202&wfr=spider&for ...

  7. 多校联赛7 1001 hdu 4666(最远哈曼顿距离+优先队列)

    吐个糟,尼玛今天被虐成狗了,一题都没搞出来,这题搞了N久居然还是搞不出来,一直TLE,最后还是参考别人代码才领悟的,思路就这么简单, 就是不会转弯,看着模板却不会改,艹,真怀疑自己是不是个笨蛋题意:求 ...

  8. 虚拟机centos 安装 redis 环境 linux 使用 java 远程连接 redis

    redis官网地址:http://www.redis.io/ 最新版本:2.8.3 在Linux下安装Redis非常简单,具体步骤如下(官网有说明): 1.下载源码,解压缩后编译源码. $ wget ...

  9. SQL利用Case When Then多条件

    CASE    WHEN 条件1 THEN 结果1    WHEN 条件2 THEN 结果2    WHEN 条件3 THEN 结果3    WHEN 条件4 THEN 结果4.........    ...

  10. app流畅度测试--使用SM

    通过测量应用的帧率FPS并不能准确评价App的流畅度,FPS较低并不能代表当前App在UI上界面不流畅,而1s内VSync这个Loop运行了多少次更加能说明当前App的流畅程度. 那么我们可以直接在A ...