現在のswfファイルのURLからパラメーターを取得する - Action Script
現在のswfファイルのURLからパラメーターを取得するコードを紹介します。
UI
下図のUIを準備します。画面にボタンとラベルを1つずつ配置します。
配置後、ボタンをクリックして選択し右クリックします。ポップアップメニューが表示されますので、メニュー内の[Click ハンドラーを作成]メニューを選択して、Clickイベントのハンドラを作成します。
コード
下記のコードを記述します。実質はボタンのClickイベントハンドラー部分を記述するのみです。~]
<?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"
width="360" height="200" minWidth="955" minHeight="600">
<fx:Script>
<![CDATA[
protected function button1_clickHandler(event:MouseEvent):void
{
// TODO Auto-generated method stub
var param:Object = this.parameters;
for (var key:String in param){
var value:String;
value = param[key];
label1.text = label1.text + key +":" + value +"/";
}
}
]]>
</fx:Script>
<fx:Declarations>
<!-- 非ビジュアルエレメント (サービス、値オブジェクトなど) をここに配置 -->
</fx:Declarations>
<s:Button x="10" y="10" label="ボタン" click="button1_clickHandler(event)"/>
<s:Label id="label1" x="10" y="39" text="ラベル"/>
</s:Application
解説
this.parameters にパラメーターの一覧が格納されています。
for (var key:String in param){
}
により、パラメーター数ループします、このとき keyにパラメーターのキーが格納されます。パラメーターの値は下図のコードで取得できます。
value = param[key];
実行結果
ファイルを配置し、WebブラウザでswfファイルのURLを開きます。swfファイルの後ろに"?"とパラメータを付加します。下図の例では
http://www.ipentec.com/sandbox/GetURL.swf?q=Penguin
にアクセスしています。swfファイルが実行され画面が表示されます。ボタンをクリックします。下図のようにパラメーターがラベルに表示されます。
著者
iPentecのメインデザイナー
Webページ、Webクリエイティブのデザインを担当。PhotoshopやIllustratorの作業もする。