Flex4如何给swf传参数

转载 2015年07月06日 18:57:22
基本上有3种方式: 
1)通过URL查询字符串方式给swf传参数 

URL如下: 
http://localhost:8080/html2Swf/bin-debug/html2Swf.swf?myName=aa&myHometown=aa 

2)通过URL查询字符串方式给swf的wrapper html页面传参数 

URL如下: 
http://localhost:8080/html2Swf/bin-debug/html2Swf.html#firstName=Nick&lastName=Danfffger 

注意,第1中方式中用?, 第2中方式用#, 另外第2种方式里name/value对的分割符可以自定义,代码中解析时作出相应更改即可,详细资料可以参考Flex3帮助文档: 
http://livedocs.adobe.com/flex/3/html/help.html?content=passingarguments_3.html 
http://livedocs.adobe.com/flex/3/html/help.html?content=deep_linking_5.html#245869 

3)在对应的Wrapper html页面中静态配置,有两个地方可以配置: 
位置1 var flashvars = {}; 

案例 var flashvars = {"myName":"Danger","myHometown":"Los%20Angeles_Flashvars"}; 

位置2 
Java代码
          swfobject.embedSWF(
                "${swf}.swf", "flashContent", 
                "${width}", "${height}", 
                swfVersionStr, xiSwfUrlStr, 
                flashvars, params, attributes);

案例: 
Java代码
          swfobject.embedSWF(
                "${swf}.swf?myName=aa&myHometown=bb", "flashContent", 
                "${width}", "${height}", 
                swfVersionStr, xiSwfUrlStr, 
                flashvars, params, attributes);

综合案例 

按方式1和3传参数,只有上面的TitleWindow里面有值,其中方式3事实上就是不传参数,按方式2传参数,只有下面的TitleWindow里面有参数值. 
Java代码

<?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" 
			   creationComplete="initVars();init(event)" minWidth="955" minHeight="600">
	<s:layout>
		<s:VerticalLayout/>
	</s:layout>
	<fx:Declarations>
		<!-- Place non-visual elements (e.g., services, value objects) here -->
	</fx:Declarations>
	<fx:Script>
		<![CDATA[
		import mx.core.FlexGlobals;
		import mx.core.mx_internal;
		use namespace mx_internal;
		// Declare bindable properties in Application scope.
		[Bindable]
		public var myName:String;
		[Bindable]
		public var myHometown:String;
		
		// Assign values to new properties.
		private function initVars():void {
			myName = FlexGlobals.topLevelApplication.parameters.myName;
			myHometown = FlexGlobals.topLevelApplication.parameters.myHometown;
		}
		
		import mx.managers.BrowserManager;
		import mx.managers.IBrowserManager;
		import mx.utils.URLUtil;
		
		private var bm:IBrowserManager;
		[Bindable]
		private var fName:String;
		[Bindable]
		private var lName:String;         
		
		private function init(e:Event):void {
			bm = BrowserManager.getInstance();
			bm.init("", "Welcome!");
			
			/* The following code will parse a URL that passes firstName and lastName as
			query string parameters after the "#" sign; for example:
			http://www.mydomain.com/MyApp.html#firstName=Nick&lastName=Danger */
			var o:Object = URLUtil.stringToObject(bm.fragment, "&");
			fName = o.firstName;
			lName = o.lastName;
		}

	]]>
	</fx:Script>
	
	<mx:TitleWindow title="Passing variables to swf directly">
		<mx:HBox>
			<mx:Label text="Name: "/>
			<mx:Label text="{myName}" fontWeight="bold"/>
		</mx:HBox>
		<mx:HBox>
			<mx:Label text="Hometown: "/>
			<mx:Label text="{myHometown}" fontWeight="bold"/>
		</mx:HBox>
	</mx:TitleWindow>
	
	<mx:TitleWindow title="Passing variables to swf through wrapper html">
		<mx:Form>
			<mx:FormItem label="First name:">
				<mx:Label id="ti1" text="{fName}"/>
			</mx:FormItem>
			<mx:FormItem label="Last name:">
				<mx:Label id="ti2" text="{lName}"/>
			</mx:FormItem>
		</mx:Form>
	</mx:TitleWindow>
</s:Application>


Flex4如何给html 中的swf传参数

基本上有3种方式:  1)通过URL查询字符串方式给swf传参数  URL如下:  http://localhost:8080/html2Swf/bin-debug/html2Swf.swf...
  • zishan007
  • zishan007
  • 2013年06月28日 16:20
  • 603

Flex4 中将网页的参数传递给Flash,并且在Flash中读取这些参数

使用Flash Builder 4创建Flex应用,会自动生成网页调用Flash,会有两种方式显示Flash,下面针对这两个方式看看如何添加参数。 方式一(swfobject): ...
  • u010395804
  • u010395804
  • 2014年06月20日 15:23
  • 434

父SWF与子SWF之间的传值

先来说一下主SWF传值给子SWF:         我们用一个例子来讲解这一块的东西         首先,我们要了一子SWF(以下简称儿子)和一个主SWF(以下简称父亲),儿子里面,就一...
  • wangluozhangleilei
  • wangluozhangleilei
  • 2013年12月12日 19:15
  • 818

flash swf接受外部参数 视频网站播放原理

转载自: http://blog.sina.com.cn/s/blog_5e83fce60100r663.html
  • lovelovelovelovelo
  • lovelovelovelovelo
  • 2017年06月30日 16:08
  • 798

FLEX4 语法及重点概要---入门篇(超详细)

chapter 1 : intruduction to flex4 1、flex包含一个基于组件的开发模型,你只需要按需求继承现有的组件并扩展相关的方法就可开发你的应用。2、可视化组件包括以下主要特...
  • xiunai78
  • xiunai78
  • 2016年12月21日 12:21
  • 1493

FlexPaper显示swf文件示例和参数设置

Parameters The following parameters can be used in FlexPaper   SwfFile (String) The fl...
  • z_Dendy
  • z_Dendy
  • 2014年04月16日 11:09
  • 2780

FusionCharts 图像报表swf文件分类收集 .

1.Column2D.swf  用于制作2D的单柱状图: 2. MSColumn2D.swf 用于制作2D的多柱状图: 3. Pie2D.swf  用于制作饼状图: 4. Dou...
  • s09122289
  • s09122289
  • 2014年10月16日 16:53
  • 820

swf文件解析(二) 文件分解及Tag获取

Extensibilit The format is a tagged format, so it can be evolved with new features while maintainin...
  • HundredBai
  • HundredBai
  • 2015年11月05日 21:29
  • 823

在PPT中插入并嵌入SWF文件图文教程

很多人都知道可以用控件法在PPT中插入SWF文件,但用过的人都知道,这种方法中SWF文件是以外部文件的形式存在,电脑运行是也是调用外部文件来播放。移动文件后,如果路径错误或忘记了携带外部文件,则无法正...
  • u011849402
  • u011849402
  • 2015年07月15日 16:32
  • 3371

flex4 自定义右键菜单

  • wpz0713
  • wpz0713
  • 2014年12月27日 13:53
  • 334
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Flex4如何给swf传参数
举报原因:
原因补充:

(最多只允许输入30个字)