`
solojava
  • 浏览: 21637 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Flex Air 拖拽排版 类似 ps 图层

阅读更多
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init();">
<mx:Script>
<![CDATA[
import mx.events.DropdownEvent;
import mx.events.DragEvent;
import mx.controls.Alert;
import mx.collections.ArrayCollection;
import mx.controls.Image;
[Bindable]
public var imageindexs:ArrayCollection;

[Bindable]
private var imageSource:ArrayCollection;

[Bindable]
private var imageXml:XML;

private function init():void
{
var image1:Image=new Image();
image1.source="1.jpg";
image1.x=31;
image1.y=50;
image1.width=400;
image1.height=300;
image1.id="图层1";
myCanvas.addChild(image1);

var image2:Image=new Image();
image2.source="2.jpg";
image2.x=61;
image2.y=100;
image2.width=400;
image2.height=300;
image2.id="图层2";
myCanvas.addChild(image2);

var image3:Image=new Image();
image3.source="3.jpg";
image3.x=91;
image3.y=32;
image3.width=400;
image3.height=300;
image3.id="图层3";
myCanvas.addChild(image3);

var image4:Image=new Image();
image4.source="4.jpg";
image4.x=121;
image4.y=230;
image4.width=400;
image4.height=300;
image4.id="图层4";
myCanvas.addChild(image4);
var image5:Image=new Image();
image5.source="5.jpg";
image5.x=181;
image5.y=260;
image5.width=400;
image5.height=300;
image5.id="图层5";
myCanvas.addChild(image5);
var image6:Image=new Image();
image6.source="6.jpg";
image6.x=299;
image6.y=160;
image6.width=400;
image6.height=300;
image6.id="图层6";
myCanvas.addChild(image6);
// trace(myCanvas.getChildren().length);
imageindexs=new ArrayCollection();
imageSource=new ArrayCollection();
for(var i:int=myCanvas.getChildren().length - 1; i >= 0; i--)
{
// imageindexs.addItem(i);
var tempImg:Image=Image(myCanvas.getChildAt(i));
tempImg.id="图层" + (int(i) + 1);
imageSource.addItem(tempImg);
// trace(tempImg.source);
}
}

private function addLayout(evt:DragEvent):void
{
var listItem:Object=evt.dragSource.dataForFormat("items");
var index:int=dragList.calculateDropIndex(evt);
var myimage:Image=listItem[0];
//图片对应图层
var x:int=myCanvas.getChildIndex(myimage);
trace("image's lyout:" + x);
var allLayoutNumber:int=myCanvas.getChildren().length;
if ((allLayoutNumber - x) != index && ((allLayoutNumber - x) - 1) != index)
{
//拖到最底层
if (index == 0)
{
myCanvas.addChildAt(myimage, allLayoutNumber - 1);
}
//从下往上拖
else if(x<(allLayoutNumber - index)){
myCanvas.addChildAt(myimage, allLayoutNumber - index-1);
}
//从上往下拖
else
{
trace("图片位于的位置:"+x+"------插入点的默认位置"+index+"---插入点计算位置"+(allLayoutNumber - index));
myCanvas.addChildAt(myimage, allLayoutNumber - index);
}
}
imageindexs.removeAll();
imageSource.removeAll();
for(var i:int=myCanvas.getChildren().length - 1; i >= 0; i--)
{
// imageindexs.addItem(i);
var tempImg:Image=Image(myCanvas.getChildAt(i));
tempImg.id="图层" + (int(i) + 1);
imageSource.addItem(tempImg);
}
}

private function onMouseDown(evt:MouseEvent):void
{

}
]]>
</mx:Script>
<mx:Canvas x="260" y="8" width="778" height="569" id="myCanvas" mouseDown="onMouseDown(event)">

</mx:Canvas>
<mx:List borderColor="blue" id="dragList" dragComplete="addLayout(event)" dropShadowEnabled="true" dropShadowColor="blue" dropEnabled="true" dragEnabled="true" dragMoveEnabled="true" x="8" y="8" width="250" height="733" dataProvider="{imageSource}">
<mx:itemRenderer>
<mx:Component>
<mx:Form >
<mx:FormItem direction="horizontal">
<mx:Label text="{data.id}"/>
<mx:Image source="{data.source}" width="150" height="90"/>
</mx:FormItem>
</mx:Form>
</mx:Component>
</mx:itemRenderer>
</mx:List>
</mx:WindowedApplication>
分享到:
评论

相关推荐

    flex air中文官方帮助文档

    Flex Air是中国Adobe公司开发的一款基于Flash技术的富互联网应用程序(RIA)开发平台,它允许开发者创建可以在桌面运行的跨平台应用程序。本“Flex Air中文官方帮助文档”是开发者的重要参考资料,详细介绍了Flex ...

    flex air 导出 excel

    Flex Air 是Adobe开发的一款用于构建桌面应用程序的框架,它基于ActionScript 3.0和Flash Player,使得开发者能够使用熟悉的Flex技术创建桌面应用。在Flex Air中,有时我们需要将数据导出为Excel格式,以便用户可以...

    flex air 本地文件管理器

    总的来说,Flex Air通过集成Air runtime,提供了与Windows系统类似的文件管理体验。借助文件树和缩略图展示,用户能够在跨平台的环境中享受到熟悉的操作方式。开发者则可以利用Flex的强大组件库和Air的本地系统接口...

    Flex air 读写Excel文件

    Flex Air 是Adobe开发的一款用于构建桌面应用程序的框架,它基于ActionScript 3.0和Flash Player,使得开发者能够使用熟悉的Web技术创建桌面应用。在给定的“Flex air 读写Excel文件”的主题中,我们将深入探讨如何...

    flexair网页截图工具

    FlexAir网页截图工具是一款专为用户设计的高效网页捕获软件,它允许用户方便快捷地截取并保存网页内容。这款工具集成了多种实用功能,旨在优化网页截图体验,提高工作效率。 在使用FlexAir网页截图工具时,首先需要...

    flex air开发中文教程

    Flex Air开发中文教程是一本专为富媒体软件开发者设计的实战型指南,旨在教会读者如何利用Adobe Flex技术来构建和部署Adobe Integrated Runtime (AIR)应用程序。Flex是基于ActionScript和MXML的开源框架,用于创建...

    flex Air 打包

    Flex Air允许开发者利用ActionScript 3.0和MXML语言创建丰富的桌面用户体验,类似于Web应用,但具备本地桌面应用的功能和性能。在这个过程中,我们需要了解几个关键知识点。 1. **Adobe AIR(Adobe Integrated ...

    flex air 单机版俄罗斯方块 flexbuilder项目文件

    flex air 单机版俄罗斯方块 小游戏 flexbuilder项目文件

    flex air 类似iphone的导航条

    在Flex Air开发中,创建一个类似iPhone的导航条可以为应用程序提供更加直观和用户友好的界面体验。这个项目可能是从网络上获取的源代码,并经过了个人的调整和优化,以适应特定的需求或改进功能。Flex Air是Adobe的...

    Flex Air音乐播放器源码

    Flex Air音乐播放器源码是基于Adobe Flex Builder 3开发的一款应用程序,主要使用ActionScript编程语言,这使得它能够在Adobe AIR(Adobe Integrated Runtime)平台上运行。Adobe Flex是用于构建富互联网应用程序...

    linux的flexair例子

    是一个linux环境下运行的flex air例子,有源码.

    flex4.6 air 读写文本文件

    在Flex 4.6与Adobe Integrated Runtime (AIR)的开发中,读写文本文件是一项基本操作,对于初学者来说尤其重要。本教程将详细介绍如何在Flex应用中实现这一功能,以便用户可以对本地的文本文件进行读取、修改以及保存...

    flex AIR 工程自动更新测试

    Flex AIR工程自动更新测试涉及到的是Adobe Integrated Runtime (AIR)应用程序的升级机制,这对于保持软件的最新状态和提供无缝用户体验至关重要。在Flex开发中,我们利用Adobe AIR SDK来创建跨平台的桌面应用程序。...

    Flex Air 学习资料\01.Flex概述.rar

    此“Flex Air 学习资料\01.Flex概述.rar”压缩包文件包含了对Flex Air的基本介绍,特别是通过“01.Flex概述.swf”这个文件,很可能是以互动式的Flash形式提供了Flex的基础知识。 1. **Flex概述**:Flex是基于...

    Flex AIR之旅--第六章 编写用户登录界面

    程序缘 Flex AIR之旅-第六章 编写用户登录界面,用于学习借鉴的Flex Air的工程源码,导入flash builder4.6即可。已实现一般C/S结构展现界面的实现,如菜单、快捷工具栏、主窗口等。

    Flex AIR物业管理系统

    《Flex AIR物业管理系统详解》 Flex AIR物业管理系统是一款基于Adobe AIR技术开发的桌面应用程序,它为物业管理提供了全面的解决方案。Adobe AIR(Adobe Integrated Runtime)允许开发者利用Flash、Flex或HTML5技术...

    Adoe FlexAir教程

    Adobe Flex Air教程是针对.NET程序员的一份详细指南,旨在教授如何使用Adobe Flex技术来构建跨平台的桌面应用程序。Flex Air是Adobe Integrated Runtime(AIR)的一部分,允许开发者利用Flex框架和ActionScript语言...

    Flex air 导入 导出 excel 打开图片等

    通过flex air 程序,使用as3xls,直接在air程序中导入excel 2003 版本,自动生成列头并显示,界面操作后可以导出excel文件 也可以导入image 直接显示 本列子为自己写的一个demo

Global site tag (gtag.js) - Google Analytics