可以打来一个相应的子类容器。标签条控件可用来设置单个容器的可视性。 iii. 遍历控件中的各个tab,并通过labelPlacement属性设置标签位置:
var tab:Tab; var idx:unit;
var len:unit=tabBar.numChildren; for(idx=0;idx tab=tabBar.getChildAt(idx) as Tab; tab.labelPlacement=tab.label. } 七、容器控件 i. 应用容器(Application):标签: 1. 语法格式: a) 应用对象使MXMl文件具有 d) 应用对象一般是文本对象,但文本对象不一定是应用对象。 e) 通过mx.core.Application.application路径,我们可以在程序的任何地 方找到根的应用对象。 3. 属性: a) Xmlns:用于定义当前文件将会使用到的命名空间。 b) Layout:在不特别设置的情况下,当前页遵循的页面布局。 4. 事件: a) Preinitialize:预初始化时发出。 b) creationComplete:完成构造,属性,测量,布局,绘制后发出。 ii. 布局容器(Layout):标签: 1. 画布(Canvas):标签: a) 语法: i. 使用绝对值定位:(Absolute):在画布上使用(x,y) 值来定义子类的 位置。 ii. 使用约束版面布局(Constraint-based Layout):给出子类到画布的 顶边、底边和左右边的距离,来进行布局和定位。 c) 画布子类可重叠的特性:可用来得到不同的效果。 d) 要控制滚动条,通过属性horizontalScrollPolicy和verticalScrollPolicy 进行控制,值为:on/off/auto。 2. 盒子、水平盒子、垂直盒子(Box、HBox 和VBox): a) 盒子容器用于在水平或者垂直方向上按序列排序子类组件。 b) 语法: i. 使用 ii. 使用 -vertial)。 3. 4. 5. 6. e) 属性: i. horizontalAlign、horizontalCenter:水平居中。其中horizontalAlign 的属性值为left、center、right; ii. verticalAlign、verticalCenter:垂直居中。其中verticalAlign的属 性值为top、middle、buttom。 控制条(ControlBar):标签: i. 语法: 应用控制条(ApplicationControlBar):标签: b) 语法: c) 两种模式: i. 固定模式:控制条一直固定在窗口的顶部,不会随着面板滚动。 ii. 浮动模式:控制条可以在窗口的任何地方,而且随着面板滚动。 分离盒、水平分离盒、垂直分离盒(Vidided Box、HVididedBox 和VVididedBox): a) 标签:分离盒 直分离盒: a) 标签:表单: b) 语法: 子类标签 c) 设置必填项目的方式:在单元格中定义required属性为true。 d) 存储和确认表单数据: i. 在表单控件中存储:如 private function processValues(myName:String,phoneNumber:String):void{} ii. 定义一个数据模型来存储:如 private function processValues():void{ var myName:String=myFrom.myName; var ipPhone:String=myFrom.phoneNumber; } e) 可通过backgroundColor和brderStyle属性来修改背景色和边框样式。 f) formHeading组件用于显示From容器中一组控件的标题,用来提示 7. 8. 9. 10. 用户该表单收集的是什么样的数据。 g) formItem组件是定义一个标签,通过设置label属性来提示用户每一 个输入组件的输入内容。 格栅布局容器(Grid):标签: a) 格栅(Grid)由格栅(Grid)、格栅行(GrodRow)和格栅细目(GridItem)组 成。 b) 语法: 子类标签 c) Grid容器允许按单元格的行和列来排列子项。Grid容器包含一行或 多行,并且每行包含一列或多个单元格或项目。 面板布局容器(Panel):标签: 子类标签 . c) Panel容器包含题栏、标题、边框以及子项分内容区域。使用panel 容器包围顶级应用程序模块。 排列模板布局容器(Tile):标签:(mx:Tile). a) 排列模板容器将子类按顺序排列在类似格栅的横平竖直的单元格中, 当一行放满时会自动换到下一行。 b) 子类: c) Tile容器将其放在由大小相等的单元格组成的网格中。可以使用 tileWidth和tileHeight属性指定这些单元格的大小。让Tile容器根据最大子项确定单元格大小。 标题窗口布局容器(TitleWindow):标签: 右上角显示一个关闭的按钮。 b) 语法: private function showWindow():void{ var popWindow:IFlexDisplayObject=PopUpManager.createPopUp(this.myPanel,this.titleWindow,true); PopUpManager.centerPopUp(popWindow); } d) 关闭标题窗口,代码如下: private function close():void{ PopUpmanager.removePopUp(this); } e) 对话框返回值id处理: i. 通过application处理。 在Application中定义一个public变量user_id,则可以在对话框 Dialog中赋值给Application.user_id变量,然后ModuleA中去读 取Application.user_id变量。 ii. 通过Dialog.owner来处理。 触发Dialog: Var dialog:Dialog=PopUpManager.createPopUp(this,Dialog,true) as Dialog; Dialog.owner=this; 在dialog中进行ModuleA的user_id变量赋值。 ModuleA(this.owner).user_id=\用户id\iii. 通过自定义事件来处理。 自定义一个事件,然后在Dialog中新建一个事件,将user_id作为参数置入到事件中,然后派发该事件。 iv. 通过全局变量来处理。 定义全局变量,然后在Dialog中置user_id变量,在ModuleA中读取user_id变量即可。 v. 通过parentDocumnt来处理。 在dialog中进行ModuleA的user_id变量赋值: parentDocument.user_id=\用户id\ f) 对话框返回值处理办法: i. 如果该返回值影响Application,建议用全局变量来处理。 ii. 如果该返回值只是当前窗体,建议用parentDocument进行处理。 11. 导航容器(Navigator): a) 视窗堆栈导航容器:标签: 1. 将一组子类容器从上到下堆栈起来,每次只有一个容器可 视、可活动。 2. 必须使用链接条、列表条、按钮条和切换按钮条来控制,选 择子类容器。 ii. 语法: 。 iii. 属性: 1. selectedIndex:定义子类容器的指针。数目为 0~numChildren-1. 2. selectedChild:定义子类容器的ID。如果没有容器被选择, 其值为null。属性只能在actionscript中定义。 3. numChildren:子类容器的总数目。 b) 列表导航容器:标签: i. 语法: 键盘导航控制来选择不同的子类。在子容器发生该表时可以利用change事件相对应地进行监听。自动建立子容器的列表,可改 变列表文本。 c) 折叠导航容器(Accordion):标签: i. 折叠导航容器建立一系列的面板,依次叠加起来。每一个面板的 头就是导航按钮,单击任何一个按钮就会打开相应的面板。 ii. 语法: 1. selectedChild:对当前可见子容器的引用。默认值为对第一 个子项的引用。如果没有子项,则此属性为null。只能在actionscript中设置此属性。 2. selectedIndex:当前可见子容器的从零开始的索引。子索引 从0开始,子项的数目-1。 八、其他控件 a) 高级表格(AdvancedDataGrid):标签: i. AdvancedDataGrid扩展了DataGrid控件的功能,为应用程序增添了数据可视 化功能。能更好地控制数据显示、数据聚合和数据格式设置。可显示多列数据,具有多个属性的对象。 ii. AdvancedDataGrid具有如下功能: 1. 列可以具有不同宽度或同一固定宽度。 2. 用户可以在运行时调整列的尺寸。 3. 用户可以在运行时重新排列列。 4. 可选择自定义列标题。 5. 能够对任何列使用自定义项显示器来显示数据(而非文本)。 6. 支持通过单击某列对数据进行排序。 b) OLAPDataGrid:标签: i. OLAPDataGrid控件扩展了AdvancedDataGrid控件的功能,可显示OLAP查询 的结果。 ii. OLAPDataGrid用于统计的字段只能是数字,目前支持求和,求平均数,求最 大最小四种运算。 iii. OLAPDataGrid继承于AdvancedDataGrid,但是内容不能拖拽,排序和编辑。 c) 可编辑文本(RichEditableText):标签: i. 用于显示、滚动、选择和编辑各种格式的文本。 ii. 可包含可单击的超链接以及可嵌入或从URL加载的内嵌图形。 iii. 不包含滚动条,但可实现用于以编程方式滚动的接口(IViewport)。支持使用鼠 标滚动垂直滚动。 iv. 不包括用于更改文本格式的任何用户界面。但提供了可以通过编程方式执行此 操作的接口。 d) RichText:标签 i. 可以显示一行或多行富文本或嵌入图像的UIComponent。 ii. 不支持滚动、选择、编辑、可单击的超链接或从URL加载的图像。 iii. 如果文本超出了显示这些文本的空间,RichText可以截断文本,使用截断指示 符(如\替换超额文本。 e) Spinner:标签: i. Spinner组件从有序集中选择值。使用基于stepsize属性的当前值增大或者减小 当前值的两个控件。