2011-01-12 12 views
5

Düzenleme: Karşılaştığım ana sorunu farkettim çünkü bir film veya bir sahnede bir flashvardan almak için sahnede zaten var olan bir metin alanı istiyorum. Bazı sebeplerden dolayı bunu yapmayacaktır. Flashvar metniyle eşleştirmek için önceden var olan bir metin alanı değişikliğini nasıl yapabilirim?AS3'teki flashvarlara nasıl erişir ve varolan bir metin alanına eklerim?

Html: Bunun basit bir görev olması gerekiyordu ve ben örnekler vermek birçok web makaleleri bulduk, ama ben yapmaya çalışıyorum ben sadece o iş yapamaz biliyorum

<div id="flashContent"> 
      <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="100%" height="29px" id="egnewsTicker" align="middle"> 
       <param name="movie" value="egnewsTicker.swf" /> 
       <param name="flashvars" value="newslisttest=this is my test" /> 
       <param name="quality" value="high" /> 
       <param name="bgcolor" value="#ffffff" /> 
       <param name="play" value="true" /> 
       <param name="loop" value="true" /> 
       <param name="wmode" value="transparent" /> 
       <param name="scale" value="showall" /> 
       <param name="menu" value="false" /> 
       <param name="devicefont" value="false" /> 
       <param name="salign" value="lt" /> 
       <param name="allowScriptAccess" value="sameDomain" /> 
       <!--[if !IE]>--> 
       <object type="application/x-shockwave-flash" data="egnewsTicker.swf" width="100%" height="29px"> 
        <param name="movie" value="egnewsTicker.swf" /> 
        <param name="quality" value="high" /> 
        <param name="bgcolor" value="#ffffff" /> 
        <param name="play" value="true" /> 
        <param name="loop" value="true" /> 
        <param name="wmode" value="transparent" /> 
        <param name="scale" value="showall" /> 
        <param name="menu" value="false" /> 
        <param name="devicefont" value="false" /> 
        <param name="salign" value="lt" /> 
        <param name="allowScriptAccess" value="sameDomain" /> 
        <param name="flashvars" value="newslisttest=this is my test" /> 
       <!--<![endif]--> 
        <a href="http://www.adobe.com/go/getflash"> 
         <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /> 
        </a> 
       <!--[if !IE]>--> 
       </object> 
       <!--<![endif]--> 
      </object> 
     </div> 

benim kendi kodu Tek yapmak istediğim bir flashvar dizesi geçmek ve AS3 kullanarak flaşa ismiyle erişebilmek, ancak bunu başaramıyorum.

deniyorum:

var paramObj:Object = LoaderInfo(this.root.loaderInfo).parameters; 
newsItem.newsHeadline.text = String(paramObj[varName]); 

Ben de denedim: Ben eserlerini deneyin

newsItem.newsHeadline.text = this.loaderInfo.parameters.newslisttest; 

Hiçbir şey, her zaman sadece boş kalır. Flash3’lere flash3’lere erişme hilesi nedir? Deneyin ...

+0

ve birisi beni buraya göndermeden önce: http://blog.six4rty.ch/tutorials/flash-flashvars-in-as3/, orada bulundum. Tam olarak nasıl sahip olduğu boş bir dosyada çalışırsam çalışır, ama eğer kendi flash dosyasına dahil etmeye çalışırsam, asla işe yaramaz. Hiç .... – Ghost9

cevap

11

Ben sadece alamıyorum ve hiçbir yere iyi bir açıklama bulamıyorum bu: stage.loaderInfo.parameters.yourparam veya

stage.loaderInfo.parameters["yourparam"] Eğer html kodunu gönderebilir miyim, bu nedenle FlashVar nasıl geçtiğini görebilirsiniz Flash

+0

Karşı karşıya olduğum ana sorunu fark etmeye geldim bir film veya bir sahnede bir flashvardan almak için sahnede zaten var olan bir metin alanı istiyorum. Bazı sebeplerden dolayı bunu yapmayacaktır. Flashvar metniyle eşleştirmek için önceden var olan bir metin alanı değişikliğini nasıl yapabilirim? stage.loaderInfo.parameters [ "yourparam"] '' örnekler bana gösterdiği, ancak kullanılarak olduğu gibi, sorun ve' "Ben denedim" oldu – Ghost9

+0

Kutsal bok çalıştı budur. Tanrım saçlarımı çekmekten bahseder. Sağol Rob! – Ghost9

+1

çalışır – Ghost9

1

Eğer hala bu sorunu yaşıyorsanız, aşağıdaki satırları takip edin. Flaş çeşitler kullandım, benim için iyi çalışıyorlar.

<html> 
<body> 
<div id="flashContent"> 
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"FlashVars="uid=123&name=santhu" width="100%" height="100%" id="index" align="middle"> 
    <param name="movie" value="index.swf" /> 
    <param name=FlashVars value="uid=123&name=santhu"> 
    <!--[if !IE]>--> 
    <object type="application/x-shockwave-flash" data="index.swf" 
      FlashVars="uid=123&name=santhu" width="100%" height="100%"> 
    <param name="movie" value="index.swf" /> 
    <param name=FlashVars value="uid=123&name=santhu"> 
    <!--<![endif]--> 
    <!--[if !IE]>--> 
    </object> 
    <!--<![endif]--> 
</object> 
</div> 
</body> 
</html> 

ve yüklemek için benim AS kod bunun için gün boyu boşa oldum

this.root.loaderInfo.addEventListener(Event.COMPLETE, SWFLoadComplete); 
private function SWFLoadComplete(e:Event) 
{ 
    obj=this.root.loaderInfo.parameters; 
    trace(obj.uid , obj.name); // outputs: 123 santhu 
} 
4

olduğunu vars ...

AS3:

Benim html senaryo olduğunu :

var uid:String; 
// your code 
this.loaderInfo.addEventListener(Event.COMPLETE, loaderComplete); 
// your code 
function loaderComplete(e:Event=null):void 
{ 
    var fv = stage.loaderInfo.parameters; 
    uid = fv['uid'] || "'uid' not found"; 
} 

HTML:

<object type='application/x-shockwave-flash' data='/flash/yourSWF.swf' width='320' height='240'> 
<param name='wmode' value='transparent' /> 
<param name='FlashVars' value='uid=yourData' /> 
<param name='movie' value='/flash/yourSWF.swf' /> 
</object> 
İlgili konular