- 浏览: 420553 次
- 性别:
- 来自: 济南
-
最新评论
-
nianshi:
slideDown就是show的滑动效果版本, slideUp ...
Jquery零碎代码收藏 -
nianshi:
以后编写JS代码,少写<div onclick=&quo ...
Jquery零碎代码收藏 -
nianshi:
获取匹配元素相对父元素的偏移var p = $("p ...
Jquery零碎代码收藏 -
nianshi:
获取匹配元素在当前窗口的相对偏移var p = $(" ...
Jquery零碎代码收藏 -
wuchu:
谢谢
Flex 读取XML配置文件总结
Flex 组件的定位和布局
大多数 Flex 容器使用预定义的规则集来自动定位您在其内定义的所有子组件。如果您使用 Canvas 容器, 或者 Application 或
Panel 容器, 其 layout 属性被设置为 "absolute", 则可以为其子级指定绝对位置, 或者使用基于限制的布局。
在 Flex 应用程序中定位组件的方法有三种:
- 使用自动定位
- 使用绝对定位
- 使用基于限制的布局
使用自动定位对于大多数容器, Flex 会根据容器的布局规则 (如布局方向、容器填充和容器的子级之间的间隙) 自动定位容器子级。
对于使用自动定位的容器, 直接设置其子组件的 x 或 y 属性或调用 move() 方法没有任何效果, 或仅有一个临时效果, 因为布局计算将组件的位置设置为一个计算的结果, 而不是指定的值。
可以通过指定容器属性控制布局的各个方面。下列属性是最常见的:
layout: 可能的值有 "horizontal"、 "vertical"或 "absolute"。当设置为
"horizontal"时, 容器会将其子级布局在一行内。 当设置为 "vertical"时, 容器会将其子级布局在一列内。 有关
"absolute" 设置的信息, 请参阅绝对定位和基于限制的布局上的部分。
horizontalAlign: 可能的值有 "left"、 "center"或 "right"。
verticalAlign: 可能的值有 "top"、 "middle"或 "bottom"。
此示例覆盖 Application 容器的 horizontalAlign 属性的 "left" 的默认设置和Application 容器的 verticalAlign 属性的 "top" 的默认设置以分别指定 "center" 和 "middle"。
此示例覆盖 Panel 容器的 layout 属性的 "vertical" 的默认设置, 从而以水平方式显示 Label 和 Button 控件。 Panel 容器的 padding 属性定义容器的空白区 (以像素计)。
示例
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml "
viewSourceURL="src/LayoutAutomatic/index.html"
horizontalAlign="center" verticalAlign="middle"
width="380" height="150">
<mx:Panel
title="My Application"
paddingTop="10" paddingBottom="10"
paddingLeft="10" paddingRight="10"
layout="horizontal" verticalAlign="middle"
><mx:Label id="myLabel" width="180" fontWeight="bold" fontSize="24"/>
<mx:Button
id="myButton" label="Click Me!"
click="myLabel.text = 'Hello, World!';"
/></mx:Panel>
</mx:Application>
结果
若要查看全部源代码, 请右键单击 Flex 应用程序并从上下文菜单中选择“查看源代码”。
使用绝对定位
有三个容器支持绝对定位:
如果您将 layout 属性指定为 "absolute", 则 Application 和 Panel 控件使用绝对定位。
Canvas 容器始终使用绝对定位。
使用绝对定位, 你通过使用其 x 和 y 属性来指定子控件的位置, 或者指定基于限制的布局;否则, Flex 会将该子级置于父容器的位置 0,0 处。 当您指定 x 和 y 坐标时, 仅当您更改这些属性值时, Flex 才会重新定位控件。
此示例将 Panel 容器的 layout 属性设置为 "absolute"。接着, 它会设置 Label 和 Button 控件的 x 和 y 属性, 从而这两个控件会重叠。
提示: 使用绝对定位是使 Flex 控件重叠的唯一方法。
示例
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml "
viewSourceURL="src/LayoutAbsolute/index.html"
horizontalAlign="center" verticalAlign="middle"
width="280" height="170">
<mx:Panel
title="My Application" layout="absolute"
width="220" height="90"
>
<mx:Label
id="myLabel"
x="10" y="10" width="180"
fontWeight="bold" fontSize="24"
/><mx:Button
id="myButton"
x="60" y="10"
label="Click Me!"
click="myLabel.text = 'Hello, World!';"
/></mx:Panel>
</mx:Application>
结果
使用基于限制的布局
您可以通过使用基于限制的布局同时管理子组件大小和定位子组件, 在该布局中您锚定组件的侧边或中心以相对于组件的容器进行定位。
您可以使用基于限制的布局来确定支持绝对定位的任何容器的即时子级的位置和大小。
您通过使用子组件的 top、 bottom、 left、 right、 horizontalCenter或 verticalCenter 样式属性来指定限制。
锚定组件的边缘
您可以将组件的一个或多个边缘锚定在其容器的相应边缘的某个像素偏移处。 当容器调整大小时, 锚定的子级边缘保持与父级边缘的距离相同。
top、 bottom、 left和 right 样式属性指定组件侧边与相应的容器侧边之间的距离 (以像素计)。
下面的示例中的 Button 控件具有锚定的底边和右边, 与它所在的 Panel 容器的边相距 10 个像素。
示例
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml "
viewSourceURL="src/LayoutConstraintsBottomRight/index.html"
horizontalAlign="center" verticalAlign="middle"
width="360" height="200">
<mx:Panel
title="My Application" layout="absolute"
width="300" height="130"
>
<mx:Button
id="myButton"
label="A button"
bottom="10"
right="10"
/></mx:Panel>
</mx:Application>
结果
若要查看全部源代码, 请右键单击 Flex 应用程序并从上下文菜单中选择“查看源代码”。
拉伸组件 如果在一个方向中锚定两个边, 如顶边和底边, 则在调整容器大小时, 也会调整组件大小。 下面的示例中的 Button 控件四个边都已被锚定, 与它所在的 Panel 容器的边相距 10 个像素。
示例
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml "
viewSourceURL="src/LayoutConstraintsEdges/index.html"
horizontalAlign="center" verticalAlign="middle"
width="360" height="200">
<mx:Panel
title="My Application" layout="absolute"
width="300" height="130"
>
<mx:Button
id="myButton"
label="A button"
top="10"
bottom="10"
left="10"
right="10"
/></mx:Panel>
</mx:Application>
结果
若要查看全部源代码, 请右键单击 Flex 应用程序并从上下文菜单中选择“查看源代码”。
锚定组件的中心
您还可以将某个子组件的水平或垂直中心 (或全部两者) 锚定在容器中心的某个像素偏移处。 除非您同时使用基于百分比的大小调整, 否则该子级不会在指定的尺寸内调整大小。
horizontalCenter 和 verticalCenter 样式指定在指定的方向上组件的中心点与容器的中心之间的距离;一个负数会从中心向左或向上移动组件。
horizontalCenter 和 verticalCenter 样式指定从容器中心的偏移 (以像素计), 应将控件置于此处。 下面的示例中的 Button 控件将两个样式都设置为 0 (零) 以完美地将它在 Panel 容器中居中。
示例
<?xml version="1.0" encoding="utf-8"?><mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml "
viewSourceURL="src/LayoutConstraintsCenter/index.html"
horizontalAlign="center" verticalAlign="middle"
width="360" height="200"
>
<mx:Panel
title="My Application" layout="absolute"
width="300" height="130"
><mx:Button
id="myButton"
label="A button"
verticalCenter="0"
horizontalCenter="0"
/>
</mx:Panel></mx:Application>
结果
若要查看全部源代码, 请右键单击 Flex 应用程序并从上下文菜单中选择“查看源代码”。
一个更加复杂的示例
下面的这个示例使用基于限制的布局来居中 Label 控件并使 Button 控件拉伸至几乎 Panel 的完全长度。 将 Label 控件的 top 属性设置为 10 以限制它看起来与 Panel 的顶部的距离为 10 像素。 将其 horizontalCenter 属性设置为 10 以完美地将它在 Panel 中居中。
将 Button 控件的 left 和 right 属性设置为 10 以使它拉伸至距离 Panel 的每一边都在 10 像素内。 将其底边属性设置为 10 以限制其底边距离 Panel 的下边为 10 个像素。
下面的图说明您以可视方式设置的属性的效果。 可视布局控件是 Flex Builder 2 的设计视图的组成部分。
提示: 不要使用 verticalCenter 样式属性指定 top 或 bottom 样式属性, verticalCenter 值会覆盖其他属性。 类似地, 不要使用 horizontalCenter 样式属性指定 left 或 right 样式属性。
由基于限制的布局确定的大小会覆盖任何显式或基于百分比的大小规范。 例如, 如果您指定 left 和 right 样式属性, 产生的基于限制的宽度会覆盖由 width 或 percentWidth 属性设置的任何宽度。
示例
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml "
viewSourceURL="src/LayoutConstraints/index.html"
horizontalAlign="center" verticalAlign="middle"
width="360" height="200">
<mx:Panel
title="My Application" layout="absolute"
width="300" height="130"
>
<mx:Label
id="myLabel"
fontWeight="bold"
fontSize="24"
top="10"
horizontalCenter="0"
/><mx:Button
id="myButton"
label="Click Me!"
click="myLabel.text = 'Hello, World!';"
bottom="10"
height="22"
left="10"
right="10"
/></mx:Panel>
</mx:Application>
发表评论
-
Flex小记录
2011-02-24 10:18 1306Flex读取XML: <mx:HTTPServic ... -
flex实现滑动显示隐藏效果
2010-12-30 15:30 1616鼠标划过的时候显示菜单栏 ,鼠标移开后隐藏菜单栏。比较常用 ... -
flex DataTimePicker时间控件
2010-12-27 11:54 1327两种DatatimePicker: 1.Datatim ... -
ActionScript 生成伪Guid
2010-12-24 09:52 1222在一个Flash制作的图片上传程序中(使用了FileRefer ... -
Flex中Image组件怎么才能非等比例拉伸图片
2010-12-23 15:49 1521Image组件怎么才能非等比例拉伸图片 设 ... -
Flex中Accordion用法
2010-12-23 11:45 3092<? xml version = & ... -
Flex(替代session过期)实现用户长时间不操作要求重新登录的处理
2010-12-23 11:08 1515flex(替代session过期)用户长时间不操作要求重新登录 ... -
ActionScript 3.0 Socket编程
2010-12-23 09:56 1188在使用ActionScript3.0进行编程 ... -
12个简单易用的flex函数
2010-12-21 10:10 11541.拷贝内容到剪贴板: ... -
Flex自定义控件——Pagebar分页控件
2010-12-20 09:41 5280开发时经常遇到用一个DataGrid分页显示 ... -
Flex资源,很全,很牛!
2010-12-20 09:30 14731、as3ebaylib http://code ... -
Flex 窗体 最大化、最小化实例
2010-12-20 09:28 2727---导入flexMdi.swc (http ... -
在Flex中复制文字到操作系统的剪贴板
2010-12-15 11:18 1254这个实例演示了怎么样使用System. ... -
Flex让Slider控件拖动时显示Tooltip
2010-12-14 16:10 1925格式化与自定义Slider中显示的Tooltip ... -
Flex给Alert加个Icon
2010-12-14 16:05 1292给Alert加个Icon 很简单只要先 Embed 一 ... -
在Flex中用Validator验证数字、字符串、Email、电话号码等
2010-12-14 09:54 4334mx.validators ... -
Flex中使用FileReference类下载文件
2010-12-14 09:47 1804下面的实例演示了Flex中的 File ... -
Flex使用ArrayCollection的filterFunction属性过滤DataGrid
2010-12-14 09:42 1818下面的实例演示了在Flex中怎样使用 ... -
Flex 树形控件(Tree )的使用
2010-12-13 16:24 3484一、树形控件的常用属性 1、dragMoveE ... -
FLEX3中应用CSS完全详解手册(下)
2010-12-13 11:40 892myTabs中的设置 cornerRadiusTab ...
相关推荐
2. **MXML与ActionScript 3.0**:MXML是Flex的标记语言,用于声明界面元素和组件布局。ActionScript 3.0则是Flex的主要编程语言,提供面向对象的特性,用于实现应用的逻辑和功能。MXML与ActionScript 3.0相结合,...
本文旨在为初学者提供一个全面的Flex入门指南。 #### 二、MXML基础 MXML是一种用于构建Flex应用程序用户界面的语言。它基于XML标准,使得开发者可以通过简单的标签语法来构建复杂的UI组件。 ##### 1. MXML的基本...
3. **Spark组件**:Flex4引入了全新的Spark组件集,相比以前的 Halo组件,Spark组件更注重可定制性、性能和视觉效果。开发者可以深入了解各种组件的属性、事件和样式,并根据需求进行自定义。 4. **States和...
4. 练习使用Flex组件,实现基本的交互功能。 5. 学习数据绑定和与服务器的通信。 6. 实践开发一个完整的项目,巩固所学知识。 通过这个“Flex快速入门资料”,新手可以系统地学习并实践Flex开发,逐步成为一名熟练...
3. **Spark组件**:Flex4引入了全新的Spark组件模型,相比之前的MX组件,Spark组件提供了更高的可定制性和性能优化。学习Spark组件,包括它们的布局管理、样式和主题,是深入理解Flex4的关键。 4. **Flex Builder**...
3. **MXML**: 声明式语言,用于定义Flex应用的视图层,可以方便地创建和布局组件。 4. **ActionScript**: 动态面向对象的编程语言,用于编写Flex应用的业务逻辑和控制层。 5. **组件库**: Flex内置了丰富的UI组件,...
Flex3快速入门指南详解 Flex,作为Adobe推出的一款强大的RICH Internet Application(RIA)开发框架,以其高效的数据处理能力和丰富的用户界面设计而闻名。本文旨在为初学者提供一个全面的Flex3快速入门指南,涵盖...
本教程“Flex从入门到精通”是一套全面的内部培训资料,旨在帮助初学者快速掌握Flex的基本概念、核心技术和实际应用。 在Flex的学习过程中,首先要理解Flex SDK,它是开发Flex应用的基础,包括编译器、库和工具。...
3. **Flex组件库**:讲解Flex提供的各种预定义UI组件,如Button、Label、List、Form等,以及如何自定义组件以满足特定需求。 4. **数据绑定**:Flex中的数据绑定机制使得UI元素的状态可以直接与数据模型关联,实现...
3. **调试技巧**:介绍常用的调试工具和方法,帮助开发者快速定位并解决问题。 4. **错误处理**:建立合理的错误处理机制,提高应用的健壮性和用户体验。 #### 七、总结 通过以上内容的学习,相信读者已经掌握了...
这个“Flex快速入门教程”显然旨在帮助初学者快速掌握Flex的基本概念和开发技能。 Flex的核心是Flex SDK,它包含了用于创建、编译和部署Flex应用程序所需的工具和库。SDK中最主要的组件是Flex编译器,它将...
它允许开发者用XML格式定义组件布局、属性和事件处理程序,简化了UI设计。 3. **Flex SDK**:Adobe Flex Software Development Kit提供了编译和调试Flex应用程序所需的所有工具,包括Flex编译器和Flex Builder集成...
4. **Flex组件库**:Flex提供了一套丰富的预定义组件,如Button、TextInput、List等,这些都是构建应用程序的基本元素。学习如何使用和自定义这些组件以满足不同设计需求。 5. **Flex应用架构**:了解Model-View-...
2. Flex组件库:熟悉MX和Spark组件的区别,以及各自的使用场景。 3. Flex与Java集成:理解BlazeDS或LCDS的工作原理,学会配置和使用RemoteObject或HTTPService。 4. 数据绑定:掌握Flex中的数据绑定机制,使UI动态...
MXML是Flex+的主要标记语言,用于描述用户界面的布局以及应用程序的非可视化方面,如数据绑定和服务器端数据源的访问。MXML是基于XML的,易于阅读和编写,使得开发者能够清晰地定义UI组件及其属性。 #### 2.2 MXML...
3. **Flex组件库**:Flex提供了一系列预定义的UI组件,如按钮、文本框、列表等,这些组件可以方便地进行定制和扩展,满足各种用户界面需求。 4. **数据绑定**:Flex支持数据绑定,这是一种机制,使得视图组件的状态...
Flex3提供了丰富的工具和资源,帮助开发者快速入门。对于初次接触Flex的新手来说,理解以下概念非常重要: ##### 1. MXML - **定义**:MXML是一种基于XML的语言,专门用于构建Flex应用程序的用户界面。它简化了UI...