currentState意思是当前的状态,Flex可以设置当前页面的多个状态(states),只需要将页面的currentState属性设置为其中某个状态,就会让当前页面变成这个状态时的样式,其中可以设置由A状态转化(transitions)为B状态的过程
下面是实现的代码

  1. 38-39为一个Panel,ID为catalogPanel,其中有Click事件
  2. 5-15行,为AS3脚本,目的是执行在点击Panel时的改变当前的状态
  3. 19-26行为状态集,分别为toLeft和toRight两个状态,toLeft就是设置目标为catalogPanel的left样式值为1,即让此Panel左边距为1,toRight同理
  4. 28-36行为转化集,其中Sequence表示按顺序转化,Parallel表示同时转化,这里由于只有Move一种转化,所以不存在顺序或同时转化的情况,duration表示延迟的时间,毫秒为单位。

总的来说,此段代码的意思就是最开始时,即在Application里设置当前状态为toLeft,所以Panel在左边。然后当点击Panel时,Panel的状态变为了toRight,由于设置了变化过程是Move,在1000毫秒完成,所以就有了移动的效果,再次点击,状态又改回为toLeft,则Panal就移回了左侧。

 1<?xml version="1.0" encoding="utf-8"?>
 2<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" currentState="toLeft">
 3    <mx:Script>
 4        <![CDATA[
 5            public function movePanel(): void
 6            {
 7                if (currentState == 'toLeft')
 8                {
 9                    currentState = 'toRight';
10                }
11                else
12                {
13                    currentState = 'toLeft';
14                }
15            }
16        ]]>
17    </mx:Script>
18    
19    <mx:states>
20       <mx:State name="toLeft">
21          <mx:SetStyle target="{catalogPanel}" name="left" value="1"/>
22       </mx:State>        
23       <mx:State name="toRight">
24           <mx:SetStyle target="{catalogPanel}" name="right" value="1"/>
25        </mx:State>
26    </mx:states>
27    
28    <mx:transitions>
29       <mx:Transition fromState="*" toState="*">
30           <mx:Sequence id="t1" target="{catalogPanel}">            
31               <mx:Parallel>
32                     <mx:Move duration="1000"/>
33               </mx:Parallel>    
34            </mx:Sequence>
35        </mx:Transition>
36    </mx:transitions>
37    
38    <mx:Panel id="catalogPanel" width="400" height="300" x="0" y="0" click="movePanel();">
39    </mx:Panel>
40    
41</mx:Application>
42

样例展现:

转载于:https://www.cnblogs.com/cj723/archive/2007/03/20/681658.html

小菜学Flex2(二 currentState初步使用)相关推荐

  1. python仿真搭建_仿真秀学院|从零开始学ANSA二次开发:如何利用Designer搭建窗口,含安装步骤...

    原标题:仿真秀学院|从零开始学ANSA二次开发:如何利用Designer搭建窗口,含安装步骤 作者 | 团长 仿真秀专栏作者 首发 |仿真秀App 导读:大家好,我是团长,是一名CAEer,还是一名C ...

  2. 跟我学jQuery(二) 初识jQuery

    跟我学jQuery教程目录: 跟我学jQuery(一)    前言 跟我学jQuery(二)    初识jQuery 跟我学jQuery(三)    无所不能的选择器1 跟我学jQuery(四)    ...

  3. 动手学Docker-第二弹-基本操作

    动手学Docker-第二弹-基本操作 Docker三大基本概念 镜像Image 容器Container 仓库Repository Docker Registry Docker Registry 公开服 ...

  4. 树莓派 + Home Assistant + HomeKit 从零开始打造个人智能家居系统 篇二:初步配置 Home Assistant 并连接小米设备与 HomeKit

    树莓派 + Home Assistant + HomeKit 从零开始打造个人智能家居系统 篇二:初步配置 Home Assistant 并连接小米设备与 HomeKit 通过本篇教程,你将完成对 H ...

  5. 海淀驾校学科目二及考试过程

    1.在考完法培后,如果接着就想学科目二,可以去海淀驾校综合管理楼(好像也叫第一读卡站,就挨着员工餐厅的一座小楼,楼前面是桑塔纳停车场)自己约车.进楼后到一层大厅,去"速成班约车器" ...

  6. mac index.html.en,【小菜学网络】MAC地址详解

    上一小节介绍了以太网帧的结构,以及帧中各个字段的作用.参与以太网通讯的实体,由以太网地址唯一标识.以太网地址也叫做 MAC 地址,我们对它仍知之甚少. 以太网地址在不同场景,称谓也不一样,常用叫法包括 ...

  7. Qt 3D教程(二)初步显示3D的内容

    Qt3D教程(二)初步显示3D的内容 前一篇非常简单,完全就没有牵涉到3D的内容,它只是我们搭建3D应用的基本框架而已,而这一篇,我们将要利用它来初步地显示3D的内容了!本次目的是将程序中间的内容替换 ...

  8. 教妹学Java(二十一):一文带你了解面向对象编程的所有概念

    你好呀,我是沉默王二,是<Web 全栈开发进阶之路>的作者,CSDN 的博客之星.<教妹学 Java>是一套非常有趣的付费专栏,除了继续保持幽默风趣的行风风格,我还力求把每一个 ...

  9. 【小菜学网络】MAC地址详解

    上一小节介绍了以太网帧的结构,以及帧中各个字段的作用.参与以太网通讯的实体,由以太网地址唯一标识.以太网地址也叫做 MAC 地址,我们对它仍知之甚少. 以太网地址在不同场景,称谓也不一样,常用叫法包括 ...

最新文章

  1. 51Nod 1453 抽彩球
  2. 内核启动流程分析(二)配置详解
  3. AS工程下gradle各文件(gradle.propertie等)与gradle配置(缓存等)讲述
  4. mysql 投票总排行_MySQL投票表,查找每个用户对条目的最新投票,并根据值进行计数...
  5. 计算机水平考试模拟,计算机水平考试模拟试题(doc 23页)
  6. itsdangerous
  7. java做抽奖小程序_基于JavaScript实现简单的随机抽奖小程序
  8. 在windows平台上编写的python程序无法在_【判断题】在Windows平台上编写的Python程序无法在Unix平台运行。...
  9. SWF是什么文件,SWF文件用什么软件可以打开
  10. 读《别闹了,费曼先生》 时的几点想法
  11. 如何利用Pix2Pix将黑白图片自动变成彩色图片
  12. android 百度地图 itemizedoverlay,[008] 百度地图API之ItemizedOverlay的使用(Android) .
  13. vim中文乱码问题的解决
  14. 【GTASA】Sanny Builder 不能编译 main.scm,报错 “Incorrect number of the conditions“
  15. sku这样设置不仅降低退款投诉还可以提升转化
  16. /etc/sysconfig/iptables.save文件的用途
  17. (11)LAN体系结构及各层的主要功能
  18. Go问题/知识收集 - 1
  19. 按键精灵脚本转换成c语言,问一个关于按键码转换的问题
  20. SCRM是什么?CRM和SCRM有什么区别?

热门文章

  1. Vue:开发者友好性和易用性
  2. All Things Intelligence—Baidu World 2020
  3. Huawei said, “Let every meeting room or coffee shop
  4. 用 Go 构建一个区块链 -- Part 1: 基本原型
  5. sql server 事务_如何使用显式SQL Server事务回滚
  6. Hyperledger Fabric 命令整理
  7. ODOO v10.0 自动生成财务凭证的科目设置
  8. ASP.NET之Ajax系列(三)
  9. HTML img 标签的 border 属性
  10. 移动网络设备睁开均盘绕Linux睁开