トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   迷える子羊の部屋【初心者専用】
     swfより変数を受け取り、カスタムMXMLコンポーネントへ渡したい
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ayaya
Åê¹ÆNo.45612
投稿日時: 2010-9-1 11:33
新米
居住地:
投稿: 2
使用環境:
WinXP,Flash9,FLEX3
swfより変数を受け取り、カスタムMXMLコンポーネントへ渡したい
初心者です。
FLEX3でMXML コンポーネントのTextInput、Buttonとカスタム
コンポーネントで動画再生playerを作成しています。
そこでは、TextInputで入力された値(ファイル名)に関して
動画再生を行っています。

そこで、外部よりパラメータによりTextInputを返さずに直接
動画再生playerに値を渡したいと考えています。

swfからflashへパラメータを渡し、TextInputに表示させて
Buttonを押下することにより動画再生はできました。

それを応用して、swfからflashへパラメータを渡して直接動画再生を行うことを考えています。
その方法がわからないので、ご教授いただければと思います。

htmlでのswfからの呼び出す部分は、省略させていただきます。

main.mxml

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" backgroundColor="#FFFFFF" xmlns:ns1="*" creationComplete="init()">

<mx:TextInput x="10" y="115" id="txtvideoid" creationComplete="text_init()"/>
<mx:Button x="178" y="115" label="ロード" click="vid.play();"/>
<mx:Canvas x="265" y="10" width="324" height="200" cornerRadius="10" borderStyle="solid" alpha="1.0" creationComplete="video_init()">
<ns1:VideoPlayer id="vid" streamid="{txtvideoid.text}" videoheight="240" videowidth="320" left="0" right="0" top="0" bottom="0" cornerRadius="10">
</ns1:VideoPlayer>
</mx:Canvas>

<mx:Script>
<![CDATA[

public var st_name:String;

private function text_init():void {
// SWFObject.js から FlashVars を読み込み。
var params:Object = this.parameters;
if (params['video_value'] != null) {
txtvideoid.text = params['video_value'];
}
}
]]>
</mx:Script>

</mx:Application>

カスタムの動画playerにはstreamid="{txtvideoid.text}"で値を渡しているようですが、
swfのパラメータからセットする方法がわかりません。

よろしくお願いします。
ゲスト
Åê¹ÆNo.45618
投稿日時: 2010-9-1 15:32
Re: swfより変数を受け取り、カスタムMXMLコンポーネントへ渡したい
MXMLであっても、loaderInfoプロパティからFlashVarsを受け取れます。

例:デフォルトのアプリケーションに設定したMXML(Flex4でもFlex3でも同じ)
for (var param:String in this.loaderInfo.parameters)
{
	trace(param, this.loaderInfo.parameters[param]);
}


HTMLでのSWFファイルを呼び出す部分に、FlashVarsを設定すればHTML側から任意のパラメーターをSWFに渡せるはずですので、FlashVarsで調べてみてはいかがでしょうか?
野中文雄
Åê¹ÆNo.45619
投稿日時: 2010-9-1 16:10
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: swfより変数を受け取り、カスタムMXMLコンポーネントへ渡したい
FlashVarsでHTMLからSWFに変数を渡す」をご参照ください。
引用:
clockmakerさんは書きました:
HTMLでのSWFファイルを呼び出す部分に、FlashVarsを設定すればHTML側から任意のパラメーターをSWFに渡せるはずですので、FlashVarsで調べてみてはいかがでしょうか?


----------------
 

ayaya
Åê¹ÆNo.45620
投稿日時: 2010-9-1 21:19
新米
居住地:
投稿: 2
使用環境:
WinXP,Flash9,FLEX3
Re: swfより変数を受け取り、カスタムMXMLコンポーネントへ渡したい
ありがとうございます。

swfへパラメータを渡す方法は,

<mx:Script>
<![CDATA[

public var st_name:String;

private function st_init():void {
// SWFObject.js から FlashVars を読み込み。
var params:Object = this.parameters;
if (params['video_value'] != null) {
st_name = params['video_value'];
}
}
]]>
</mx:Script>

でできていました。
初心者なので、何が問題かわからずに質問いたしました。

よく考えたら、取得した値をMXMLのカスタムコンポーネントに
渡す方法が不明でした。


<ns1:VideoPlayer id="vid" streamid="{st_name}" videoheight="240" videowidth="320" left="0" right="0" top="0" bottom="0" cornerRadius="10">
</ns1:VideoPlayer>
</mx:Canvas>

streamid="{st_name}"に変更することにより、HTMLよりMXMLのカスタムコンポーネントに値を渡すことができました。

ありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops