`
jickcai
  • 浏览: 247744 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

flex4实例: 自定义Panel 实现Panel的切换

    博客分类:
  • flex
阅读更多

双击Panel的标题可以实现最大化:



HPanel.mxml:
<?xml version="1.0" encoding="utf-8"?>
<s:Panel xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
creationComplete="onCreationComplete()">
<fx:Metadata>
[Event(name="headerClick")]
</fx:Metadata>
<fx:Script>
<![CDATA[
import flash.events.Event;

import spark.skins.spark.PanelSkin;
private function onCreationComplete():void
{
var panelSkin:PanelSkin=skin as PanelSkin;
if(panelSkin==null) return;
panelSkin.addEventListener(MouseEvent.CLICK,onHeaderClick);
}

private function onHeaderClick(event:MouseEvent):void
{
if(event.currentTarget is PanelSkin)
{
var ps:PanelSkin=PanelSkin(event.currentTarget);
if(event.localY<30)
{
dispatchEvent(new Event("headerClick"));
}
}
}
]]>
</fx:Script>
<s:layout>
<s:VerticalLayout paddingLeft="10" paddingTop="10"
  paddingBottom="10" paddingRight="10"/>
</s:layout>
</s:Panel>

FlexTest.mxml

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
   xmlns:s="library://ns.adobe.com/flex/spark"
   xmlns:mx="library://ns.adobe.com/flex/mx"
   xmlns:comp="components.*"
   width="100%" height="100%">
<fx:Script>
<![CDATA[
private function toggleState(newState:String):void
{
currentState=(currentState==newState)?'':newState;
}
]]>
</fx:Script>
<s:layout>
<s:BasicLayout/>
</s:layout>
<s:states>
<s:State name="default"/>
<s:State name="stateOne" stateGroups="[noStateTwo,noStateThree]"/>
<s:State name="stateTwo" stateGroups="[noStateOne,noStateThree]"/>
<s:State name="stateThree" stateGroups="[noStateOne,noStateTwo]"/>
</s:states>
<comp:HPanel id="stateOnePanel" title="State One Panel"
left="10" top="10" width="200" right.stateOne="10"
height="100" bottom.stateOne="10" excludeFrom="noStateOne"
headerClick="toggleState('stateOne')">
<s:Label text="松尾 芭蕉" fontSize="20" fontSize.stateOne="140"/>
</comp:HPanel>

<comp:HPanel id="stateTwoPanel" title="State Two Panel"
  left="10" bottom="10" top="115" top.stateTwo="10"
  width="200" right.stateTwo="10" excludeFrom="noStateTwo"
  headerClick="toggleState('stateTwo')">
<s:Label width="100%" height="100%" fontStyle="italic"
  text="I am trusting that the following pages
  http://en.wikipedia.org/wiki/Matsuo_Bash%C5%8D
  and http://en.wikisource.org/wiki/Frog_Poem
  have the Kanji of Matsuo Bashō's name and
  famous poem correct.)"/>
</comp:HPanel>
<comp:HPanel id="stateThreePanel" title="State Three Pane"
  excludeFrom="noStateThree" top="10" left="220"
  left.stateThree="10" right="10" bottom="10"
  headerClick="toggleState('stateThree')">
<s:Label fontSize="50" fontSize.stateThree="70" text="古池や&#13;蛙飛びこむ&#13;水の音"/>
<s:Label text="--Matsuo Bashō&#13;&#13;
The ancient pond&#13;A frog leaps in&#13;The sound of the water.
&#13;--Donald Keene"/>
</comp:HPanel>
</s:Application>
  • 大小: 24.9 KB
  • 大小: 15.9 KB
分享到:
评论

相关推荐

    flex panel窗体有最小化最大化关闭

    在实际开发中,`myPanel`可能是一个具体的Flex Panel实例,包含了上述功能的实现。开发人员可能通过XML描述(MXML)或ActionScript代码(AS3)来创建和配置这个Panel,确保它具备最小化、最大化、关闭和可移动的能力...

    Flex入门实例教程

    ### Flex入门实例教程知识点概述 #### 一、Flex简介 - **定义与特点**:Flex是一种开源框架,用于构建高质量的Web应用程序,并可跨浏览器、操作系统和设备进行部署。它结合了HTML、JavaScript和Flash Player的功能...

    flex 入门实例教程

    ### Flex 入门实例教程知识点总结 #### 一、Flex简介 - **Flex** 是一种开源框架,主要用于构建跨浏览器、跨平台的应用程序。它基于Adobe的Flash平台,并且使用了MXML(一种XML方言)作为标记语言以及ActionScript...

    Flex高级数据绑定实例(界面语言切换)

    ### Flex高级数据绑定实例——界面语言切换 #### 概述 在Flex开发中,实现界面的多语言切换是一项常见的需求。本示例通过一个具体的代码片段来展示如何使用Flex中的高级数据绑定技术来实现这一功能。该示例不仅...

    flex开发实例

    根据给定文件的信息,我们可以提炼出一系列关于Flex开发的关键知识点,包括Flex的基础概念、MXML与ActionScript的基本用法以及一些具体的控件和功能实现。下面将详细展开这些知识点: ### Flex简介 Flex是一种用于...

    Flex图片上传实例

    此实例不仅提供了一个实际的上传图片的应用场景,而且还包含了一些实用的代码片段,这对于想要了解如何在Flex中实现图片上传功能的开发者来说非常有价值。 #### 标题解析:“Flex图片上传实例” 该标题简洁明了地...

    Flex开发实例--学习必备

    - 可以通过ActionScript编程实现自定义的绘制逻辑。 #### 6. 地图图层介绍 - 地图可以由多个图层组成,每个图层代表不同的信息。 - 通过控制图层的可见性和顺序,可以灵活地展示地图信息。 #### 7. 获取鼠标当前...

    Flex开发实例.pdf

    - 实现Flex应用与后端WebService之间的数据交互,提高应用的扩展性和灵活性。 #### 4. **Flex与Ajax交互** - 通过Ajax技术实现Flex应用与服务器的异步数据交换,提升用户体验。 综上所述,Flex不仅是一种功能...

    Flex开发实例

    ### Flex开发实例知识点详解 #### 一、Flex简介与基础 **1. Flex简介** - **定义**: Flex是一种开源框架,用于构建具有表现力的Web应用程序,并能够跨浏览器、操作系统和设备平滑运行。 - **特点**: 基于XML...

    Flex基础入门与开发实例

    ### Flex基础入门与开发实例知识点概述 #### 一、Flex简介 - **定义**: Flex是一种开源框架,由Adobe系统提供支持,主要用于构建跨浏览器、跨平台的富互联网应用程序(RIA)。Flex开发基于XML,因此其语法遵循XML的...

    FLEX入门实例--------transition,state的综合运用

    本实例主要探讨的是FLEX中`transition`和`state`的综合应用,这两个特性是FLEX界面动态效果和组件状态管理的核心。 首先,让我们深入理解`transition`和`state`的概念: 1. **Transition(过渡效果)**: 过渡...

    Flex详细文档.pdf

    - **Flex与WebService通信**: 实现Flex应用程序与WebService的通信,支持JSON或XML数据交换。 - **Flex与Ajax交互**: 结合Ajax技术,实现异步数据加载和更新。 #### 六、总结 通过以上内容,我们可以看到Flex不仅...

    flex实现 ComboBox中下拉checkbox

    总结来说,通过自定义ComboBox的下拉列表组件和渲染器,以及创建具有移动和调整大小功能的Panel,我们可以实现Flex中的ComboBox下拉列表中带有Checkbox的功能。这使得用户能够在下拉列表中进行多选操作,同时保持了...

    Flex 3 控件实例全部

    通过这样的实例,开发者可以更好地理解如何在 Flex 3 应用程序中集成和使用 `Alert` 控件,以增强用户体验并提供必要的反馈。Flex 3 提供了大量其他类型的控件,如按钮(`Button`)、文本输入(`TextInput`)、列表...

    flex4 panel去掉标题设置透明度效果代码

    在Adobe Flex 4中,若要移除某个Panel组件的标题,我们可以通过修改该Panel组件的特定属性来实现。具体方法是,使用ActionScript 3.0代码来访问Panel组件的titleDisplay属性,该属性是对Panel标题的引用。然后,通过...

    flex中文帮助文档

    通过对Flex框架、MXML、ActionScript 3.0、CSS以及图形资源的综合运用,开发者能够构建出既美观又实用的用户界面,并实现复杂的应用逻辑。此外,Flex还支持灵活的数据管理和高效的编译流程,极大地提升了开发效率和...

    extjs实践大量实例讲解

    ### 示例 4:使用卡片布局制作切换效果 ```javascript Ext.create('Ext.panel.Panel', { title: 'Card Layout', width: 400, height: 300, layout: 'card', items: [ { title: 'Panel 1', html: 'Content ...

    Flex+java+bluzeds反向传送,正向数据传送与配置与实例

    Flex是一种用于构建富互联网应用程序(RIA)的开源框架,而BlazeDS是Adobe提供的一个服务器端组件,用于在Flex客户端和Java后端之间实现AMF(Action Message Format)数据交换,提供实时的双向通信。 1. **Flex与...

Global site tag (gtag.js) - Google Analytics