Flash游戏、Flash音乐、小游戏

加入收藏

设为主页

首页 | Flash游戏 | Flash音乐 | Flash动画 | 邻家女孩 | 动漫下载 | 小说 | 动漫资讯 | 免费博客

Flash游戏 | 动漫COSPLAY | 手机世界 | 游戏新闻 | IT业界 | 动漫设计 | 软硬件交流

首页>>动漫设计>>正文让Flex像Flash那样传递参数

将woogood加入收藏夹 | 将woogood设置成为你电脑首页

搜索 SEARCH

    

让Flex像Flash那样传递参数

作者:[] 来源:[闪客帝国] [2005-8-15 17:39:26] [对"让Flex像Flash那样传递参数"发表评论]

最新文章

·隐藏卸载信息:跟入侵者玩躲猫猫
·网络新威胁 无线局域网入侵检测现
·宽带用户易被攻击 用户需注意七大
·如何查找和清除线程插入式木马程
·日志分析两部曲:充分利用日志保
·安全设置Windows组策略 有效阻止
·实现了!中文WinXP安装IE7 Beta1
·黑客破解Email账号常用的三种方法
·基础知识 XST攻击理论及手法讲解
·威胁同样巨大 基于Telnet协议的攻

推荐文章

·请教看电影多的人问题
·文字处理软件疑难问题求助,
·求助:Excel问题
·在线等...........
·大家都是怎样用摄像头的?发
·如何加启动程序?急
·midia player classic使用时
·关于IE,请大家帮助
·IE被改用兔子也没用啊??
·播放器问题,大家帮帮忙啊

  众所周知,在Flash中是这样传递参数的:

代码:

var myloadvars:LoadVars = new LoadVars();
myloadvars.load("test3.jsp");
myloadvars.onLoad = function(success){
if (success){
var a:String = this.myVars;
trace(a);
}
}

  在Flex中比较常见的都是用WEBService,HTTPServive等来和后台进行数据通信的,通常是用XML做为通讯介质的,但有时候,在数据量不大,对结构化要求不高是,我们依然希望采用在Flash中比较熟悉的LoadVars,下面介绍如何让Flex像Flash那样传递参数:

  首先,我们要有个输出参数的Jsp

test3.jsp:
代码:

<%@ page contentType="text/html;charset=utf-8"%>
<%
out.println("&myVars=ai829");
%>

  其次,在mxml里有两种方式实现像Flash那样通讯

  第一种方法就是用LoadVars:

LoadVars.mxml:
代码:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml" initialize="initApp();">

<mx:Script>
<![CDATA[
import mx.utils.*;

function initApp(){
var myloadvars:LoadVars = new LoadVars();
myloadvars.load("test3.jsp");
myloadvars.onLoad = function(success){
if (success){
var a:String = this.myVars;
alert(a);
}
}
}
]]>
</mx:Script>
</mx:Application>

以上是老方法,就不多说了,况且很不安全.

第二种方法就是用HTTPService,一般在用HTTPService时resultFormat默认是XML,现在我们要把它改成flashvars.
这样我们就像Flash那样传递参数,又可以用Flex的whitelist来保证安全,一举两得!

flashvars.mxml
代码:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml" initialize="initApp();">

<mx:HTTPService id="hs_01" url="test3.jsp" showBusyCursor="true" result="onLoad();" resultFormat="flashvars"/>

<mx:Script>
<![CDATA[
import mx.utils.*;

function initApp(){
/*var myloadvars:LoadVars = new LoadVars();
myloadvars.load("test3.jsp");
myloadvars.onLoad = function(success){
if (success){
var a:String = this.myVars;
alert(a);
}
}*/
hs_01.send();

}
function onLoad(Void):Void{

var a:String = hs_01.result.myVars;
alert(a);
txt.text=hs_01.result.myVars;
}
]]>
</mx:Script>
<mx:TextInput id="txt" />
</mx:Application>

  注意在接收数据时一定要把接收数据的function放到result里,这样才能正常工作.result就相当于LoadVars 里的那个onLoad method。

相关文章:

对"让Flex像Flash那样传递参数"发表评论:

会员名称:
密码:匿名 ·注册·(匿名无须填写密码)
评论内容:
(最多300个字符)
  查看评论

热门Flash 最新Flash 热门小说 最新小说

 

Copyright@2005-2006 精品Flash www.WooGood.com All Right Reserved

联系信箱: gold1686tom.com