前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >flash/flex图片幻灯片(小图列表,大图展示)

flash/flex图片幻灯片(小图列表,大图展示)

作者头像
liulun
发布于 2022-05-09 04:05:46
发布于 2022-05-09 04:05:46
43700
代码可运行
举报
文章被收录于专栏:liulunliulun
运行总次数:0
代码可运行

先看图片

再上源码

此效果jquery版的请看此处:http://www.cnblogs.com/liulun/archive/2010/11/07/1871145.html

jquery版的没有这个FLASH版的要好

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?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"
			   backgroundColor="Black"
			   creationComplete="init();">

	<fx:Script source="AllenAS.as">
	</fx:Script>

	<fx:Declarations>
		<mx:HTTPService id="picser" 
					   showBusyCursor="true" 
					   result="httpHandle(event)"
					   useProxy="false"
					    resultFormat="e4x"
					    method="GET"
					   >	
		</mx:HTTPService>
		<s:Move id="picMove" target="{spics}">
			
		</s:Move>
	</fx:Declarations>
	<s:BorderContainer x="0" y="0" 
					   width="100%" height="100%"
					   backgroundColor="#000000"
					   borderVisible="false">
		<mx:Image id="bigImg" 
				  horizontalCenter="0" verticalCenter="0" />		
	</s:BorderContainer>
	<s:BorderContainer x="0" y="0" 
					   width="55" height="100%"
					   backgroundAlpha="0"
					   borderVisible="false">
		<mx:Image id="btnLeft1" 
				  horizontalCenter="0" verticalCenter="0" 
				  source="@Embed(source='pic/l1.jpg')"  
				  mouseOver="btnLeft_mouseOverHandler(event)" 
				  mouseOut="btnLeft_mouseOutHandler(event)" 
				  buttonMode="true" />
		<mx:Image id="btnLeft2"  visible="false"
				  horizontalCenter="0" verticalCenter="0" 
				  source="@Embed(source='pic/l2.jpg')"  
				  mouseOver="btnLeft_mouseOverHandler(event)" 
				  mouseOut="btnLeft_mouseOutHandler(event)" 
				  click="btnLeft1_clickHandler(event)"
				  buttonMode="true"/>
	</s:BorderContainer>
	<s:BorderContainer y="0" width="55"
					   height="100%" right="0"
					   backgroundAlpha="0"
					    borderVisible="false">
		<mx:Image id="btnRight1"
				  horizontalCenter="0" verticalCenter="0"
				  source="@Embed(source='pic/R1.jpg')"
				  mouseOver="btnRight_mouseOverHandler(event)" 
				  mouseOut="btnRight_mouseOutHandler(event)" 
				  buttonMode="true"/>
		<mx:Image id="btnRight2" visible="false"
				  horizontalCenter="0" verticalCenter="0"
				  source="@Embed(source='pic/R2.jpg')"
				  mouseOver="btnRight_mouseOverHandler(event)" 
				  mouseOut="btnRight_mouseOutHandler(event)" 
				  click="btnRight1_clickHandler(event)"
				  buttonMode="true"/>
	</s:BorderContainer>
	<s:BorderContainer id="spics" width="100%" height="86" bottom="0" backgroundAlpha="0" borderVisible="false">
		<s:HGroup id="picgroup"  horizontalCenter="0" verticalCenter="0" gap="4">
		</s:HGroup>		
	</s:BorderContainer>

</s:Application>







import flash.events.MouseEvent;
import flash.net.URLRequest;

import mx.controls.Alert;
import mx.controls.Image;
import mx.messaging.messages.ErrorMessage;
import mx.rpc.events.ResultEvent;

import org.bytearray.gif.events.FileTypeEvent;
import org.bytearray.gif.events.FrameEvent;
import org.bytearray.gif.events.GIFPlayerEvent;
import org.bytearray.gif.events.TimeoutEvent;
import org.bytearray.gif.player.GIFPlayer;

import spark.components.HGroup;
import spark.effects.Move;

private var _myGIFPlayer:GIFPlayer=new GIFPlayer();
private var pic_num:int;
private function init():void
{
	var p:String = this.url.substr(this.url.indexOf('?'));
	picser.url = "../share/share_dat.asp"+p;
	picser.send();
}
protected function btnLeft_mouseOverHandler(event:MouseEvent):void
{
	btnLeft2.visible=true;
	btnLeft1.visible=false;
}
protected function btnLeft_mouseOutHandler(event:MouseEvent):void
{
	btnLeft1.visible=true;
	btnLeft2.visible=false;
}
protected function btnRight_mouseOverHandler(event:MouseEvent):void
{
	btnRight2.visible=true;
	btnRight1.visible=false;
}			
protected function btnRight_mouseOutHandler(event:MouseEvent):void
{
	btnRight1.visible=true;
	btnRight2.visible=false;
}
protected function httpHandle(e:ResultEvent):void
{
	var pics:XML =  e.result as XML;
	var piclist:XMLList = pics.children();
	var item:XML;
	for each(item in piclist)
	{
		createOnespic(item.attribute("spic"),item.attribute("bpic"));
	}	
	pic_num = picgroup.numElements;
	var timg:Image = picgroup.getElementAt(pic_num/2) as Image;
	set_pic(timg);
}
private function set_pic(t:Image):void
{
	var temp:Image;
	var index1:int;
	for(var i:int=0;i<pic_num;i++)
	{
		temp = picgroup.getElementAt(i) as Image;		
		if(temp == t)
		{
			index1=i;
		}
		temp.alpha = 0.5;		
		temp.trustContent = true;
	}
	bigImg.load(t.name.toString());
	t.trustContent = false;	
	t.alpha = 1;
	if(this.width<pic_num*80)
	{
		picMove.stop();
		picMove.xFrom = spics.x;
		picMove.xTo = this.width/2 - index1*80 - 38;
		picMove.duration=2000;
		picMove.play();
	}

}
private function createOnespic(surl:String,burl:String):void
{
	var pic:Image;
	pic = new Image();
	pic.source = surl;
	pic.width = 76;
	pic.height = 76;
	pic.buttonMode = true;
	pic.name = burl;
	pic.addEventListener(MouseEvent.CLICK, img_click); 
	pic.trustContent = true;
	pic.alpha = 0.5;
	picgroup.addElement(pic);
}
protected function img_click(event:MouseEvent):void
{
	var t:Image = event.currentTarget as Image;
	set_pic(t);
}
protected function btnLeft1_clickHandler(event:MouseEvent):void
{
	var temp:Image;
	var i:int=0
	for(;i<pic_num;i++)
	{
		temp = picgroup.getElementAt(i) as Image;		
		if(!temp.trustContent)
		{
			break;
		}
	}
	i-=1;
	if(i<0)
	{
		i=pic_num-1;
	}
	set_pic(picgroup.getElementAt(i) as Image);
}
protected function btnRight1_clickHandler(event:MouseEvent):void
{
	var temp:Image;
	var i:int=0
	for(;i<pic_num;i++)
	{
		temp = picgroup.getElementAt(i) as Image;		
		if(!temp.trustContent)
		{
			break;
		}
	}
	i+=1;
	if(i>pic_num-1)
	{
		i=0;
	}
	set_pic(picgroup.getElementAt(i) as Image);
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2010-11-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Flex + XML的图片轮显
逻辑部分与JavaScript有些类似,在解析XML时,单独写了一个as类来处理,btn的外观使用了CSS进行控制,资源全部放在名为assets文件夹目录下,工程目录
meteoric
2018/11/16
4170
Flex笔记_格式化数据 原
注意:上述代码没有输出结果是因为Flex内部会把XML转换成一组高级对象,既不是Date也不是String,而format函数只接受这两种对象作为参数,因此代码需要做如下修改:
LeoXu
2018/08/15
5970
Flex实现
传统网络应用是基于页面的,服务器端数据传递的模式,而且将网络程序的表示层建立于HTML之上,但是HTML只适合文本。因此,传统的,基于页面的系统已经越来越不适应使用者的全方位提要要求。富因特网应用程序(Rich Internet Application)便应运而生了。
张哥编程
2024/12/17
1580
Flex效果
通过前面章节的学习,我们已经可以开发FLex应用了,本章的任务是对Flex应用进行美化以提高用户的感受度。
张哥编程
2024/12/17
1050
Flex事件机制(三)
本文通过介绍自定义事件,讲解了在Flex中如何实现事件机制,并利用EventDispatcher类简化了自定义事件的实现。通过一个具体的实例,展示了如何创建一个自定义事件并派发,最后总结了使用自定义事件的好处。
高爽
2017/12/28
8480
Flex事件机制(三)
Flex4中的ModuleLoader,Alert以及TitleWindow
1、ModuleLoader 在Asp.Net开发中,经常会把页面的公共部分封装成自定义控件ascx,以达到重用或动态加载的目的。在Flex4中MXML Module能达到类似的功能,可以把某些功能单
菩提树下的杨过
2018/01/22
7910
Flex常用组件
本章主要介绍如何使用Flex组件构建界面。Flex组件可分为可见组件和非可见组件。可见组件用于界面的外观设计,非可见组件为辅助应用程序的设计。例如,使用Flex非可见组件来存储数据,为一些多值可见组件提供数据源,如下拉框组件。另外,本章还着重介绍了Flex中最常用的几种组件, 包括复选框(CheckBox)、 下拉框(ComboBox)、列表框(List)、单选框(RadioButton)、输入框(Textln- put)、消息提示框(Alert)、AdvancedDataGrid数据表格组件、Tree组件、MenuBar 菜单导航组件、VideoPlayer视频播放组件等。
张哥编程
2024/12/19
2200
构建第一个Flex的Mobile APP
Flash Builder 4.5已经支持直接创建Flex Mobile Project,写一个最简单的例子
meteoric
2018/11/15
4890
使用代码分离构建自定义组件
这样,使用一个script标签来编写as代码,mxml代码和as代码混淆在一起,比较混乱,维护困难,看着也比较乱。
高爽
2022/05/07
4960
jquery图片幻灯片(小图列表,大图展示)
先来个效果图(没有服务器,没办法提供演示版) 效果不如FLASH版的好,接下来我就发出FLASH版的来 全部代码如下所示 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <META HTTP-EQUIV="Co
liulun
2022/05/09
2.4K0
jquery图片幻灯片(小图列表,大图展示)
Flex应用性能优化
前几章介绍了Flex应用开发的主要内容,本章将介绍Flex应用性能优化相关的知识,比如如何减少SWF文件的大小和内存泄漏问题以及改善代码性能的技巧等。很多时候,影响应用性能的主要因素是设计。不好的设计是导致应用性能低下的主要原因,而针对不同特点的应用,采用何种设计方法往往与设计者本身的经验和素质相关。在排除了设计的因素之后在Flex应用开发中还有很多具体细节和技巧可以提高Flex应用的性能,本章将介绍RSL技术以减小SWF文件的体积,和Flex垃圾回收原理,以及预防内存泄露的一些基本技巧。此外还介绍了Flex应用中进行打印机打印的常见方法。
张哥编程
2024/12/17
1070
Flex上传文件
前几天写了一篇jsp页面利用ajaxFileUpload上传文件。如今把flex上传页面也分享出来:
全栈程序员站长
2022/07/07
3580
flex4 amcharts 删除水印「建议收藏」
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/116648.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/06
5400
flex4/flash builder中动态加载Module并与之交互的正确方式
关于flex中动态加载Module的文章,网上有很多,但多半是基于flex3的,如果在flash builder/flex4中按他们所提供的方法去做,最后将module加载到容器中时,会报:null object reference错误。 经过多番摸索,发现只能在ready回调中,以Object这种基本类型使用,不能强制做任何类型转型,方能正常加载到容器,并与加载后的实例交互(虽然这样flash builder的IDE环境中,无法智能代码提示),原因不明! 开始吧,先创建一个mxml Module,命名为:
菩提树下的杨过
2018/01/22
6670
as3的InteractivePNG例子
在as3中很多时候需要只能选中png中可视区域,即透明区域“感觉可以穿透”。两张png重叠的时候,鼠标可以分别响应它们的事件。如下图所示:
meteoric
2018/11/15
5630
Pylons 和 Flex 3
"Pylons" 和 "Flex 3" 是两个不同的技术,各自有着不同的背景和应用场景:
华科云商小徐
2024/07/03
1150
flash/flex 与 FluorineFx通讯之Hello World!
Bēniaǒk兄弟的Flex与.NET互操作(六):Flex和.NET协同开发利器FluorineFx 是基于vs2008 + flex builder3的,不知道什么原因,我在vs2010 + flash builder4 上试了几次,总是不成功(也许晚上应该自我检讨下人品鸟),于是有了这一篇东东,算是对 vs2010/flash builder4环境下的一个补充吧 .net的服务端依照参照silverlight获取外部数据的另一种选择:FluorineFx 里的做法,在TestLib.cs里定义一个方法
菩提树下的杨过
2018/01/23
9330
flash/flex 与 FluorineFx通讯之Hello World!
Flex笔记_使用Spark列表控件 原
ListBase ->  SkinnableDataContainer -> SkinnableContainerBase -> SkinnableComponent -> UIComponent ->
LeoXu
2018/08/15
6040
Flex与外部的数据通信
第3章讲解了视图状态、Flex页面间的跳转、Flex应用的模态窗体、数据绑定、使用拖放,图表等知识。本章将学习Flex与外部的数据通信。在实际开发过程中,Flex应用的数据往往来自于业务逻辑数据提供的服务器端。虽然Flex是用于开发富客户端界面的强大平台,可以编写业务逻辑,但从架构的角度看,仍然需要将核心的业务逻辑放在Flex程序之外。Flex与外部程序的数据通信主要包括HTTPService. WebService和Remoting 3种方式。
张哥编程
2024/12/17
1120
Flex简单小程序
主mxml: <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009
三产
2021/01/13
5390
相关推荐
Flex + XML的图片轮显
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验