プロが教える店舗&オフィスのセキュリティ対策術

FLASHのファイル(2.swf)内に検索窓(テキスト入力欄とボタン)を作成し、その検索窓に特定の文字(ファイル名そのままのような単純なものではない言葉)を入力してボタンを押すことで、予め決めておいた外部swfファイル(3.swfと4.swfのどちらか)を読み込み表示させるということは可能でしょうか。
なお、必要なデータベースは、FLASHとは別の形式のファイル(javascriptなど)を用意するのではなく、swf内に作成したいと思っています。
使用ソフトは、FLASHMXです。よろしくお願いします。

1.exe … 読み込んで再生するためのプロジェクタ
2.swf … 初めに読み込まれているファイル
3.swf … 検索して読み込ませたいファイル
4.swf … 検索して読み込ませたいファイル

A 回答 (3件)

検索ワード入力


検索結果表示
は置いといて仕組みだけ
実行しても何も起きませんが
デバグ画面で結果が表示されます
以下サンプル

// データの配列の初期設定
SerchText = new Array();
JampUrl = new Array();
// ここに検索配列--------------------------------------
// データ0
SerchText[0] = "あいうえお";
JampUrl[0] = "4.swf";
// データ1
SerchText[1] = "かきくけこ";
JampUrl[1] = "5.swf";
// データ2
SerchText[2] = "あいうえおかきくけこ";
JampUrl[2] = "5.swf";
// 検索ファンクション-----------------------------
function SwfSerch(SerchChara) {
MathValue = 0;
delete MachUrl;
MachUrl = new Array();
// データの数だけ繰り返します
for (Dnum=0; Dnum<=SerchText.length-1; Dnum++) {
// res には マッチなし=-1 マッチあり>=0 が代入されます
// and 検索をするのなら もうひとつループしなくてはいけません
res = SerchText[Dnum].indexOf(SerchChara);
// マッチしたなら
if (res>=0) {
MachUrl[MathValue] = JampUrl[Dnum];
MathValue++;
}
}
// マッチしたファイルを配列で返す
// 検索結果表示をどうするかでここもかわります
return MachUrl;
}
// 実行例----------------------------------
// これはデバッグで表示されるtraceで結果を表示します
// (SWF画面では何も出ないよ)
// 実際どのように検索結果を表示したいかで
// かなりやることが変わって来ます
a = _root.SwfSerch("あ");
for (i=0; i<=a.length-1; i++) {
trace(a[i]);
}

以上サンプル

方法は無限にありますが
求める仕様によってそれぞれ良い方法があると思います

とりいそぎ汚いソースですが...
もっとFla4的なソースがよかったかな

とにかく少し遅いですね
    • good
    • 0
この回答へのお礼

詳しいサンプルありがとうございます。
難しそうですが、早速挑戦してみたいと思います。
ありがとうございました。

お礼日時:2003/08/11 23:32

検索対象となる文字列をFlash内部で変数を持っておいて


入力された文字列にマッチする変数を検索し
それに対応するswfを読み込むということでしょうか?

でしたら

1.検索対象の文字列を配列で格納
2.対応するswfファイルのURLを配列で格納
3.入力フォームを作る
4.検索ルーチンを作る
5.結果を評価して分岐

ということでしょうか?
Flashは正規表現が使えないのでJavaScriptより
融通に欠けるかもしれませんね
速くもないですし

exeということはCD-ROMでの配布を想定しているのでしょうか?

「JavaScriptによる簡易データベース」については
知りません

もし具体的なサンプルが必要でしたら
時間くださいね
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。
私の希望することは、全てお書きくださった内容の通りです。サンプル(flaファイルまたはtxtファイル)をいただけるのでしたら、とてもうれしいです。ただ、申し訳ありませんが、私はFlashをバージョン4の時から使用していていまだにムービーコントロールやブラウザ/ネットワーク、プリントのアクションくらいしか覚えられません。難しいアクションを実行したい時は、全て購入したFlashMXのテクニック集の中から選んで使用しています。ですから、出来る限り簡単なプログラムをよろしくお願いします。

お礼日時:2003/08/11 21:22

1.何を検索するのか(検索項目が3.4の二つしかないの?)


2.データベースには何が入るのですか
3.データベースとは何かの理解はOKですか?
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。
ご質問についてですが、

1.何を検索するのか(検索項目が3.4の二つしかないの?)
 swfファイルです。検索項目が少ないのは、説明をわかり易くするためで、数はもっとあります。

2.データベースには何が入るのですか
3.データベースとは何かの理解はOKですか?
 以前、HTMLでJavaScriptによる簡易データベースを作成し、外部jsファイルから検索して予め決めておいた文字列を表示するということを行いました。このJavaScriptによる簡易データベースについては、ご存知のことと思いますが、私はデータベースについてこのようなものを想像して質問させていただきました。
よって、簡易データベースの例でhtmlファイルにあたるものが2.swfであり、文字列にあたるものが3.swfや4.swfであり、jsファイルにあたるものを私は知りたいのです。そして、簡易データベースの例では、htmlファイルとjsファイルを使いますが、私はjsファイルにあたるものも、2.swfファイル内にActionScriptなどで指定し、3.swfか4.swfを読み込み表示させたいのです。

お礼日時:2003/08/11 14:44

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!