他のサイトへリンクさせよう

リンクの活用方法

swf ファイルから他のサイトの URL へリンクを張ってみましょう。
使用例としては、制作したアニメーションの中で使用している、リンクウェアのイラスト素材や音素材があった場合、その提供元サイトの名前を表示する際にリンクも張っておけば、ユーザーはすぐにそのサイトを確認する事が出来ます。
また、自分のサイトの中の一部に Flash を使用している場合に、HTML からだけでなく、Flash 内からも任意のページへ直接ユーザーを誘導させる事などが出来ます。

Flash のリンクについて

swf ファイル内から他のサイトへのリンクを張る方法は、簡単なアクションスクリプト「getURL();」を使用します。
今回の場合は、オブジェクトをクリックすることで、すぐに任意のアドレスへ移動する仕組を作りたいので、アクションスクリプトを記入する場所は「ムービークリップ」または「ボタン」のどちらかという事になり、今回は扱いやすい「ボタン」シンボルを使用したいと思います。

また、同じく「getURL();」を使用する事で、メールソフトを起動させることもできます。
この機能を利用すると、自分宛への「お問い合わせメール」などを、ユーザーが簡単に作成する事が出来るので非常に便利で、尚且つ迷惑メール対策としても優れた効果を発揮します。
通常は、自分のホームページ上で、自分宛へのお問い合わせ用メールアドレスを HTML ファイルの中にを記入してしまうと、途端に迷惑メールがどっさり来ます。これは、メールアドレス収集ロボットが「@」前後のテキストを拾っていくためです。
一般的な対策としては、メールアドレスを画像で表示させたり、「@」を別の記号に置き換えたり、CGIフォームを使用したりといった感じになると思いますが、それぞれに一長一短があります。
とりあえず、Flash からメールソフトが立ち上がるようにする仕組みも、1つの選択肢に入れておいてよいのではないかと思います。

下記の、サンプルの swf ファイルを見てみましょう。
青いバナーをクリックすると、「FLASHでアニメーションを作ろう!」(当サイト)が別ウィンドウで開くようになっています。メールアドレス部分をクリックすると、「お問い合わせ」という件名付きのメールソフト(Outlook や Thunderbird など)が立ち上がります(環境によっては動作しない事もあります)。
また、メールアドレス部分のテキストは、マウスカーソルで選択して、直接コピー出来るようにしてあります。
ちなみに、このメールアドレスはテキトーに考えたものなので、送信してもどこにも届きません。

リンクの設定方法

さて、このように、外部のURLへリンクを張るにはどのようにすればよいのか、上記のファイルを例に、具体的に説明していきたいと思います。

まずは、バナー部分とアドレス部分がボタンになっているので、通常はそれぞれを「ボタンシンボル」に変換しなければならないのですが、私の場合は無精というか、シンボルの数が増えるのが嫌なので、「汎用ボタン」と名前を付けた使い回しが出来る透明ボタンを一つだけ作ります。
作り方としては、「矩形ツール」で適当な四角を描き→ボタンシンボルに変換→「プロパティインスペクタ」の「カラー」でアルファの値を 0% にするだけです。
ただし、マウスのロールオーバーで、ボタン自体の色や形が変化するボタンを作る際には、一つひとつボタンシンボルに変換する必要があります。

次に、バナーの画像を配置し、その上にバナー画像と同じサイズ(88×31ピクセル)にした「汎用ボタン」を重ねます。この時、特にレイヤーを分ける必要はありませんが、後で編集しやすいように、私は分けるようにしています。
ここで「汎用ボタン」を選択状態にして、「アクションパネル」を開き、

on (release) {
getURL("http://www.*******.jp");
}

と記述します。
"*******"の部分には任意で指定する移動先のURLが入ります。
これで、「このボタンを押すと"http://www.*******.jp"に移動しなさい」という命令のアクションスクリプトを記述した事になります。
後はサーバーにアップロードして、バナー(ボタン)をクリックすると指定のアドレスのページが表示されるはずです。ローカルではセキュリティー上の関係で、ページは移動しないようになっているようです。

上記のswfファイルのように、移動先のページを別ウィンドウで開くには、URLの指定の後に「,」(ドットではなくカンマです!)で区切って「"_blank"」と記入します。
サンプルファイルでは、実際には

on (release) {
getURL("http://www.asahi-net.or.jp/~wu3m-okmt/","_blank");
}

と記述しています。
これは、「このボタンを押すと"http://www.asahi-net.or.jp/~wu3m-okmt/"を別ウィンドウで開きなさい」という命令のアクションスクリプトです。
同一サイトの中にもかかわらず次々にウィンドウが増えていくのは腹が立つので、状況に応じて使い分けましょう。
これで外部URLへのアクセスは完了です。

最後にメールソフトの起動方法ですが、これも作成の手順は全く同じです。
上記サンプルファイルを例にすると、まず、アドレスをテキストで配置します。
パブリッシュした際に、マウスカーソルでテキスト部分を選択出来るようにするには、「プロパティインスペクタ」の「選択可能」ボタンをオンにしておきます。
次にテキストのアドレス部分と同じ大きさにした「汎用ボタン」をアドレス部分に重ねます。
ここで「汎用ボタン」を選択状態にして、「アクションパネル」を開き、

on (release) {
getURL("mailto:abc@test-address.jp?Subject=お問い合わせ");
}

と記述しています。
アドレス部分 (abc@test-address.jp) には、実際に使用するメールアドレスを記入します。
メールにタイトルが必要ない場合は、「?Subject=お問い合わせ」の部分を削除します。
こちらはローカルでも動くので、アップロード前にきちんと動作するか確認しておきましょう。

さぁ、他のサイトへリンクさせることが出来ると、いろいろなものを作る事が出来ますよ。
Flash を使ったリンク集とか… それから… リンク集とか… あとは…
とにかくいろいろ作って遊びましょ!