


XML内の記載内容は要素または項目毎に情報が分別されているのでプログラムなどで動的に表示させる時には有効です。
FLASHは外部ファイルとして用意したXMLファイルを読み込み、その文字列を表示したりリンクすることが可能です。

表示される文字はSWF内にあるのではなく、外部ファイルのXMLデータに明記しています。
ボタンを押すとXMLファイルで指定しているリンク先サイトが表示されます。

| (1) XMLファイルの作成 |
| |
・テキストファイルに以下を明記する。 |
| |
| 01 |
| 02 |
| 03 |
| 04 |
| 05 |
| 06 |
| 07 |
| 08 |
| 09 |
| 10 |
| 11 |
| 12 |
|
| <?xml version="1.0" encoding="UTF-8"?> |
| <top> |
| <menu> |
| <title>リンクボタン</title> |
| <url>http://www.macromedia.com/jp/shockwave/download/ |
| index.cgi?P1_Prod_Version=ShockwaveFlash&Lang=Japanese</url> |
| </menu> |
| <menu>Macromedia</menu> |
| <menu> |
| ボタンを押すとFLASH Playerのダウンロードサイトが表示されます。 |
| </menu> |
| </top> |
|
|
| |
・「xml.xml」と名前をつけて保存する。 |
| (2) ボタンとなるシンボルを作成 |
| |
・ボタン背景のみ作成するため文字は入れない。 |
 |
| (3) シンボルをステージに配置 |
| |
・ActionScriptを設定するレイヤー作成する。(レイヤー名をActionとする) |
| |
・空欄のテキストエリアを3つ配置する。 |
| |
・テキストエリアの1つは(1)で作成したシンボルの下へ配置する。 |
 |
| (4) ステージ上のテキストエリアそれぞれに変数を設定 |
| |
・シンボルの上のテキストエリアに変数「slideText」を設定する。 |
 |
| |
・「【リンク先】」の下のテキストエリアに変数「slideText2」を設定する。 |
| |
・「【解説】」の下のテキストエリアに変数「slideText3」を設定する。 |
| (5) 「Action」レイヤーにActionScriptを設定 |
| |
| 01 |
| 02 |
| 03 |
| 04 |
| 05 |
| 06 |
| 07 |
| 08 |
| 09 |
| 10 |
| 11 |
| 12 |
| 13 |
| 14 |
| 15 |
| 16 |
| 17 |
| 18 |
| 19 |
| 20 |
| 21 |
| 22 |
| 23 |
| 24 |
| 25 |
| 26 |
|
| index_xml = new XML(); |
| index_xml.onLoad = startIndexMenu; |
| index_xml.load("./xml.xml"); |
| index_xml.ignoreWhite = true; |
| |
| function startIndexMenu(success) { |
| if (success == true) { |
| rootNode = index_xml.firstChild; |
| firstMenuNode = rootNode.firstChild; |
| childMenuNode = firstMenuNode.firstChild; |
| updateMenu(childMenuNode); |
| } |
| } |
| |
| function updateMenu(newMenuNode) { |
| slideText = newMenuNode.firstChild.nodeValue; |
| |
| slideText_op = newMenuNode.nextSibling; |
| urlNode = slideText_op.firstChild.nodeValue; |
| |
| nextMenuNode2 = firstMenuNode.nextSibling; |
| slideText2 = nextMenuNode2.firstChild.nodeValue; |
| |
| nextMenuNode3 = nextMenuNode2.nextSibling; |
| slideText3 = nextMenuNode3.firstChild.nodeValue; |
| } |
|
|
| (6) 設置したシンボルを選択し、ActionScriptを設定 |
| |
|
| on (press) { |
| getURL(_root.urlNode); |
| } |
|
|
| (7) SWFファイルとXMLファイルを同じ階層に置き、動作確認 |

上記(5)の01〜04でXMLデータを読み込んでいます。
ActionScript「firstChild」は親ノードの子リスト内の最初の項目を参照するための関数です。
08の「rootNode」には(1)のXMLデータ02〜10が入り、09の「firstMenuNode」にはXMLデータ03〜09が入ります。
ここで入れられたデータは<○○>と</○○>といったタグも含んでいるため、16の「firstChild.nodeValue」でタグを除いたデータにしています。
18の「nextSibling」で次の項目を参照します。
また、XMLデータのURLを明記して「getURL」を利用すれば、(6)のようにリンクボタンにもなります。

