ANSA二次开发——BCGUI简介(3)
上篇文章ANSA二次开发——BCGUI简介(2)主要介绍了在创建GUI界面中常见的组件创建函数,那如何在窗口中将各种不同的组件排列出我们想要的布局呢?下面就介绍一些常用的布局类函数。
ANSA常用布局类函数
guitk.BCBoxLayoutCreate(p, o)
该函数可以在父类组件、布局下创建内部内容横向或者纵向布置的盒子。
- p (object) –父类组件或布局.
- o (integer) –guitk.constants.BCVertical纵向布置,guitk.constants.BCHorizontal横向布置。
- Return-BoxLayout
布局如下所示,左边的是横向布局,右侧的是纵向布局,这里需要注意一点的是在BCBoxLayout中创建其他的组件或者布局时首先需要使用创建函数创建需要的组件或者布局,其次guitk.BCGridLayoutCreate(p,numRows,numCols)使用BCBoxLayoutInsert()来控制插入的位置,这里请大家咨询查找帮助文档熟悉函数的参数及返回值。
guitk.BCGridLayoutCreate(p,numRows,numCols)
- p (object) –父类组件或布局.
- numRows (integer) –(optional)可选参数,可以不填
- numCols (integer) –(optional)可选参数,可以不填
- Return-GridLayout
该布局在使用过程中需要与guitk.BCGridLayoutAddWidget(grid, w, row, col, alignment)配合使用。该函数是将组件w,以alignment的对齐方式,放置在BCGrid中的第row行,第col列。常见的对齐方式有:
- guitk.constants.BCAlignAuto
- guitk.constants.BCAlignLeft
- guitk.constants.BCAlignRight
- guitk.constants.BCAlignHCenter
- guitk.constants.BCAlignJustify
- guitk.constants.BCAlignTop
- guitk.constants.BCAlignBottom
- guitk.constants.BCAlignVCenter
- guitk.constants.BCAlignCenter
- guitk.constants.BCAlignHorizontal_Mask
- guitk.constants.BCAlignVertical_Mask
下面据一些具体的例子来看一下这两种布局类的函数是如何使用的,假设我们要创建如下的窗口。
首先创建一个窗口,这里注意一定要使用guitk.BCShow(w),才能显示窗口。
接着我们创建第一部分中的BCLabel以及BCLineEdit组件。先创建一个BCBoxLayout用来容纳BCLabel以及BCLineEdit组件,注意在创建BCBoxLayout中方向是水平。
接着我们创建BCBoxLayout下面的BCGridLayout,这里配合BCGridLayoutAddWidget()来讲BCPushButton一一插入到相应位置
最后我们来建立最后的OK和Cancel按键,这里我们直接把这两个按键放在了BCWindow下,当然你再建立一个属于BCWindow的BCBoxLayout或者BCGridLayout,再把这两个按键在其中布局也可以,不过没什么必要。