- 浏览: 420660 次
- 性别:
- 来自: 济南
-
最新评论
-
nianshi:
slideDown就是show的滑动效果版本, slideUp ...
Jquery零碎代码收藏 -
nianshi:
以后编写JS代码,少写<div onclick=&quo ...
Jquery零碎代码收藏 -
nianshi:
获取匹配元素相对父元素的偏移var p = $("p ...
Jquery零碎代码收藏 -
nianshi:
获取匹配元素在当前窗口的相对偏移var p = $(" ...
Jquery零碎代码收藏 -
wuchu:
谢谢
Flex 读取XML配置文件总结
添加效果
效果是在较短时间上发生的对组件的更改。效果的例子有: 淡化组件、调整组件大小和移动组件。一种效果与一个触发器相结合才能形成一个行为,
如组件上的鼠标单击、组件获得焦点或组件变成可见的。 在 MXML 中, 您将效果应用为控件或容器的属性。 Adobe® Flex™
提供具有默认属性的一组内置效果。
作为对某些用户或编程操作的响应, 行为使您可以将动画、动作和声音添加到应用程序中。 例如, 您可使用行为在获得焦点时弹出对话框, 或是在用户输入无效的值时发出声音。
Flex 触发器属性是作为层叠样式表 (CSS) 样式被实施的。
若要创建行为, 您定义一个具有唯一 ID 的特定效果并将它绑定到触发器。 例如, 下面的代码创建两个缩放效果: 一个用于轻微缩小组件, 一个用于将组件还原至其原始大小。 这些效果通过使用它们的唯一 ID 被分配到“按钮”组件上的 mouseDownEffect 和 mouseUpEffect 触发器上。
注意 如何将 Panel 容器的 autoLayout 属性设置为 "false"。这样是为了阻止在按钮改变大小时面板改变大小。
示例
<?xml version="1.0" encoding="utf-8"?><mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml " width="170" height="140"
>
<!-- Define effects -->
<mx:Zoom id="shrink" duration ="100" zoomHeightTo=".9" zoomWidthTo=".9" /><mx:Zoom id="revert" duration="50" zoomHeightTo="1" zoomWidthTo="1" />
<mx:Panel
title="Bouncy Button" paddingTop="10" paddingBottom="10"
paddingLeft="10" paddingRight="10" autoLayout="false"
left="41" top="24" right="42"><!-- Assign effects to target -->
<mx:Button
id="bouncyButton" label="Click me!"
mouseDownEffect="{shrink}" mouseUpEffect="{revert}"
/></mx:Panel>
</mx:Application>
结果
若要查看全部源代码, 请右键单击 Flex 应用程序并从上下文菜单中选择“查看源代码”。
使用效果方法和事件
您可以调用效果上的方法来改变它们播放的方式。 例如, 可以通过调用效果的 pause() 方法来暂停效果, 并通过使用其 resume() 方法来继续该效果。可以通过调用效果的 end() 方法来结束该效果。
当效果开始和效果结束时, 它也会发出 startEffect 和 endEffect 事件。 您可以监听这些事件并响应您的事件状态中的更改。
下面的示例使用“移动”效果的方法和事件来创建一个简单的游戏。 该游戏的目标是使直升飞机尽可能接近靶而又不撞到它。 靠得越近, 赢得的点数越多。
该游戏使用取自 SWF 文件库的电影剪辑符号来表示靶、直升飞机和爆炸动画。 有关这如何工作的详细信息, 请参阅嵌入资源。
示例
<?xml version="1.0" encoding="utf-8"?><mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml " width="525" height="450"
viewSourceURL="src/EffectsChopperGame/index.html"
>
<mx:Script><![CDATA[
// Easing equations have to be explicitly imported.
import mx.effects.easing.Quadratic;// Embed movie clip symbols from the library of a Flash SWF.
[Embed(source="assets/library.swf", symbol="DartBoard")]
public var DartBoard:Class;
[Embed(source="assets/library.swf", symbol="Helicopter")]public var Helicopter:Class;
[Embed(source="assets/library.swf", symbol="Explosion")]
public var Explosion:Class;
// Event handler for the effectEnd event.
private function endEffectHandler():void
{helicopter.visible = false;
explosion.visible = true;
score.text = "0";
pauseButton.enabled = resumeButton.enabled =
selfDestructButton.enabled = false;
}// Event handler for the "Play Again!" button.
private function playAgainHandler():void
{// Call resume() to make sure effect is not
// in paused state before it ends or calling
// pause() on it later will not work.
flyChopper.resume();
// End the effect
flyChopper.end();
// Reset assets to their original states.
helicopter.visible = true;
explosion.visible = false;
startButton.enabled = pauseButton.enabled =
resumeButton.enabled = selfDestructButton.enabled = true;
}
private function pauseChopperHandler():void
{
// Pause the Move effect on the helicopter.
flyChopper.pause();
// Calculate player's score based on the inverse of the
// distance between the helicopter and the dart board.
score.text = String(Math.round(1/(helicopter.x - dartBoard.x)*10000));
pauseButton.enabled = false;
resumeButton.enabled = true;
}
private function resumeChopperHandler():void
{
flyChopper.resume();
resumeButton.enabled = false; pauseButton.enabled = true;
}]]>
</mx:Script>
<!-- Create a Move effect with a random duration between .5 and 1.5 seconds -->
<mx:Move
id="flyChopper" target="{helicopter}"
xBy="-290" easingFunction="mx.effects.easing.Quadratic.easeIn"duration="{Math.round(Math.random()*1500+500)}"
effectEnd="endEffectHandler();"
/>
<mx:Panel
title="Effects Chopper Game" width="100%" height="100%"
paddingTop="10" paddingLeft="10" paddingRight="10"
paddingBottom="10" horizontalAlign="right">
<!-- The game canvas -->
<mx:Canvas width="100%" height="100%"><mx:Image
id="dartBoard" width="100" height="150.2"
source="{DartBoard}" x="10" y="20"/>
<!-- Hide the explosion animation initially. -->
<mx:Image
id="explosion" source="{Explosion}"
y="50" x="0" added="explosion.visible = false;"/>
<mx:Image
id="helicopter" width="80" height="48.5"
source="{Helicopter}" right="0" y="67"/>
</mx:Canvas>
<!-- Instructions -->
<mx:Text
width="100%" color="#ff0000"
text="Pause the helicopter as close as possible to the dartboard without hitting it."
textAlign="center" fontWeight="bold"/>
<mx:HBox>
<mx:Label text="Score:" fontSize="18"/>
<mx:Label id="score" text="0" fontSize="18"/>
</mx:HBox>
<mx:ControlBar horizontalAlign="right">
<mx:Button
id="startButton" label="Start"
click="flyChopper.play(); startButton.enabled=false;"/>
<mx:Button id="pauseButton" label="Pause" click="pauseChopperHandler();"/>
<mx:Button id="resumeButton" label="Resume" click="resumeChopperHandler();"/>
<mx:Button
id="selfDestructButton" label="Self destruct!"
click="flyChopper.resume(); flyChopper.end();"/>
<mx:Button label="Play again!" click="playAgainHandler();"/></mx:ControlBar>
</mx:Panel>
</mx:Application>
提示: 如果调用某个效果的 end() 方法时, 该效果被暂停, 则当您再次显示相同的效果时, 调用其 pause() 方法将不会有效果。 若要解决此问题, 请在调用其 end() 方法之前调用效果上的 resume() 方法。换句话说, 在首先继续暂停的效果之前, 不要结束它。
结果
若要查看全部源代码, 请右键单击 Flex 应用程序并从上下文菜单中选择“查看源代码”。
发表评论
-
Flex小记录
2011-02-24 10:18 1307Flex读取XML: <mx:HTTPServic ... -
flex实现滑动显示隐藏效果
2010-12-30 15:30 1617鼠标划过的时候显示菜单栏 ,鼠标移开后隐藏菜单栏。比较常用 ... -
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 2728---导入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 1805下面的实例演示了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 ...
相关推荐
Flex提供了一套丰富的预定义组件,如按钮、文本框、列表等,这些组件可以快速构建用户界面。通过设置组件属性、样式和事件监听器,你可以定制组件的行为和外观。 总之,Flex入门需要掌握数据绑定的概念,学会使用...
6. **Effect和动画**:Flex 4.0加强了对效果(Effect)和动画的支持,通过Effect类和Animate类,开发者可以轻松添加过渡效果和自定义动画,提升用户界面的动态性。 7. **事件模型**:Flex 4.0的事件模型基于观察者...
本文旨在为初学者提供一个全面的Flex3快速入门指南,涵盖从基础编码到高级用户界面构建的关键知识点。 ### 一、使用MXML和ActionScript进行编码 #### MXML:用户界面布局的XML语言 MXML(Flex Markup Language)...
本文旨在为初学者提供一个全面的Flex入门指南。 #### 二、MXML基础 MXML是一种用于构建Flex应用程序用户界面的语言。它基于XML标准,使得开发者可以通过简单的标签语法来构建复杂的UI组件。 ##### 1. MXML的基本...
4. **MXML**:MXML是Flex的声明式语言,用于构建用户界面。讲解了MXML的基本结构,组件的使用,以及如何将AS3代码与MXML结合。 5. **Flex组件库**:详述了Flex组件库中的各种UI组件,如按钮、文本框、面板、列表等...
Flex的应用程序构建基于组件模型,这意味着你可以使用预定义的UI元素(如按钮、文本框等)来构建用户界面。MXML是一种声明式语言,它允许开发者以XML格式定义界面布局和组件属性。ActionScript则是Flex的编程语言,...
3. **Flex组件库**: Flex SDK提供了一个丰富的组件库,包括按钮、面板、数据网格等,这些组件使得开发者能够快速构建复杂的用户界面。 4. **数据绑定**: Flex支持数据绑定,允许UI组件的状态与应用程序数据模型自动...
3. **Flex组件库**:Flex提供了一系列预定义的UI组件,如按钮、文本框、列表等,这些组件可以方便地进行定制和扩展,满足各种用户界面需求。 4. **数据绑定**:Flex支持数据绑定,这是一种机制,使得视图组件的状态...
3. **MXML**:Flex的主要标记语言,用于定义用户界面的布局和外观,支持动态加载和数据绑定等功能。 4. **ActionScript**:Flex使用的脚本语言,用于编写程序逻辑。ActionScript 3.0是Flex最常用的版本,它提供了...
5. **Flex组件库**:Flex提供了一系列预定义的组件,如按钮、文本框、面板等,方便快速构建用户界面。开发者可以通过自定义组件来扩展功能。 6. **事件处理**:在Flex中,事件是驱动用户界面交互的关键。事件监听器...
它基于ActionScript 3.0编程语言,利用MXML(标记语言)和ActionScript来构建用户界面和业务逻辑,非常适合创建动态且交互性强的应用程序。 #### 二、Flex3编程入门 Flex3提供了丰富的工具和资源,帮助开发者快速...
### MapGIS IGServer Flex 快速入门手册关键知识点解析 #### 一、MapGIS IGServer Flex 二次开发简介 MapGIS IGServer Flex 是一款由武汉中地数码科技有限公司开发的地理信息系统(GIS)服务平台,主要面向Web应用...
### 自创Flex入门教程 #### 一、技术背景与范围 本教程主要涉及以下几个方面的内容: - **Java**:作为后端开发的主要语言之一,Java提供了丰富的类库和框架支持,便于开发各种复杂的应用程序。 - **JavaServlet*...
描述:本篇文档旨在引导初学者快速掌握Flex技术,通过学习MXML和ActionScript,理解如何构建用户界面组件,并实现数据绑定等功能。 标签:Flex入门,flex,flex教程 知识点: 1. **Flex概述**: - Flex是由Adobe...
Flex Builder 3作为一个强大的集成开发环境(IDE),提供了图形化的设计视图,让开发者能够直观地拖放组件来构建用户界面,同时支持编写ActionScript 3代码,这是Flex应用程序的主要编程语言,与Flash CS3兼容。...
### Flex的Adobe AIR快速入门知识点解析 #### 一、处理文件和数据 1. **构建目录搜索应用程序** - **异步读取文件**: 在构建目录搜索应用程序时,使用`getDirectoryListingAsync()`方法来异步获取目录列表,这样...
3. **Flex组件库**:了解Flex提供的丰富组件库,如Button、TextInput、Label等基本UI元素,以及Canvas、Accordion、TabNavigator等高级组件,这些组件可以帮助快速构建复杂的用户界面。 4. **数据绑定**:熟悉Flex...
Flex4的出现极大地提升了开发者的创造力,使得应用程序不仅有丰富的用户界面,还具备了高效的性能。 Flex4教程通常会涵盖以下几个关键知识点: 1. **ActionScript 3.0**:Flex4的基础是ActionScript 3.0,这是一种...
MXML是一种声明式语言,用于构建用户界面,而ActionScript则是一种面向对象的编程语言,负责处理程序逻辑。通过MXML,开发者可以轻松地定义组件布局,设置属性和事件监听器,而ActionScript则提供了一种强大而灵活的...