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

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     ActionScript でボタンが表示できない
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
あきる
Åê¹ÆNo.25890
投稿日時: 2006-6-3 16:11
新米
居住地: さいたま
投稿: 4
使用環境:
WindowsXP
Eclipse + ASDT + Flashout + MTASC
Eclipse + IDE for Laszlo
OpenLaszloServer
ActionScript でボタンが表示できない
みなさん初めまして。

先週から ActionScript 記述のみで Flash コンテンツを作成しようと試行錯誤しています。

ボタンやチェックボックスなどの部品を画面に配置しようと思い調べていたところ、createObject 関数で可能ということが分かりました。
しかし、実際にやってみるとコンパイルは通るものの画面には何も表示されません。

この方法は FlashMX などの既存の部品コンポーネント or API などを取り込んで配置する前提の関数なのでしょうか?
(そういう製品を持ってなくて取り込めないから表示されない?)
それともソースがマズいだけなのでしょうか?

環境は Eclipse + ASDT + Flashout + MTASC です。
よろしくお願いします。

class ButtonCreate {
    static function main() {
        var app:ButtonCreate=new ButtonCreate(_root);
    }
    function ButtonCreate(mc:MovieClip) {
        // ボタン作成
        mc.createObject("Button", "myButton", mc.getNextHighestDepth());
        mc.myButton._x = 10;
        mc.myButton._y = 10;
    }
}
野中文雄
Åê¹ÆNo.25891
投稿日時: 2006-6-3 16:32
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: ActionScript でボタンが表示できない
お持ちの環境で、どのようにSWFに書出されるのかはわかりません。ただ、ButtonコンポーネントのシンボルがSWFに含まれていなければならず、以下のクラスを使用する前にロードされている必要があります。
引用:
あきるさんは書きました:
環境は Eclipse + ASDT + Flashout + MTASC です。
...[中略]...
class ButtonCreate {
    static function main() {
        var app:ButtonCreate=new ButtonCreate(_root);
    }
    function ButtonCreate(mc:MovieClip) {
        // ボタン作成
        mc.createObject("Button", "myButton", mc.getNextHighestDepth());
        mc.myButton._x = 10;
        mc.myButton._y = 10;
    }
}

Flash 8の[ライブラリ]にButtonコンポーネントを格納し、以下のフレームアクションを実行すると、Buttonコンポーネントインスタンスは問題なく作成されます。
// タイムライン: _root
// 第1フレームアクション
new ButtonCreate(this);


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

あきる
Åê¹ÆNo.25893
投稿日時: 2006-6-3 20:07
新米
居住地: さいたま
投稿: 4
使用環境:
WindowsXP
Eclipse + ASDT + Flashout + MTASC
Eclipse + IDE for Laszlo
OpenLaszloServer
Re: ActionScript でボタンが表示できない
野中文雄さん、回答ありがとうございます。

引用:

野中文雄さんは書きました:
お持ちの環境で、どのようにSWFに書出されるのかはわかりません。ただ、ButtonコンポーネントのシンボルがSWFに含まれていなければならず、以下のクラスを使用する前にロードされている必要があります。

Flash 8の[ライブラリ]にButtonコンポーネントを格納し、以下のフレームアクションを実行すると、Buttonコンポーネントインスタンスは問題なく作成されます。


createObject 関数はシンボルに定義された Button コンポーネントのインスタンスを作成するということなんですね。
私の環境では Flash 8 によって提供されるコンポーネント群がないので、この方法ではボタンはできそうにないですね。

createTextField 関数のような感覚でできたらと思ったんですが・・・。

あとはボタン風の画像を貼り付けてボタンに見せかけるとかかな。。。
Fla4man
Åê¹ÆNo.25895
投稿日時: 2006-6-3 20:35
職人
居住地: かまくら
投稿: 517
使用環境:
WinMe,Win2000,
Flash4,アズさん,大仏、delphi
Re: ActionScript でボタンが表示できない
私なんてFAMEどころかベタ生成+asm的環境なんですが...

テキストフィールドにhtmlテキストでリンクをつければ
jpegも使えるしマウスクリックで
<a href="asfunction:***">関数</a>構文で関数呼べるし
動的に変えられるし充分だと思うのですが
どんなもんでしょう。
特に描画実験用のボタンとしてはテキストフィールドを使った
createbutton関数を用意しておくとかなーり便利です。

後そういうことも含めてリスナーとかも使って
ボタンオブジェクトのクラスを自前定義すれば
createObjectも使えると思います。


----------------
通常のハンドル名:×○○× ねた回収モードに突入 現在1/100

あきる
Åê¹ÆNo.25896
投稿日時: 2006-6-3 22:07
新米
居住地: さいたま
投稿: 4
使用環境:
WindowsXP
Eclipse + ASDT + Flashout + MTASC
Eclipse + IDE for Laszlo
OpenLaszloServer
Re: ActionScript でボタンが表示できない
Fla4man さん、回答ありがとうございます。
私の環境を FAME と呼ぶことを今日知りました。
てっきり Flex みたいな統合開発環境か何かの名前かと思ってましたよ。

引用:
テキストフィールドにhtmlテキストでリンクをつければ
jpegも使えるしマウスクリックで
<a href="asfunction:***">関数</a>構文で関数呼べるし
動的に変えられるし充分だと思うのですが
テキストフィールドにリンクをつける&関数を呼ぶのはできましたが、
> jpegも使えるしマウスクリックで
が良く分かりません。
リンクをつける要領で、
class ButtonCreate {
    static function main() {
        var app:ButtonCreate=new ButtonCreate(_root);
    }
    function ButtonCreate(mc:MovieClip) {
        mc.createTextField("txtField", mc.getNextHighestDepth(), 10, 10, 40, 40);
        mc.txtField.html = true;
        mc.txtField.htmlText = "<a href='http://www.yahoo.co.jp'><img src='button.JPG' border=0 width=30 height=30></a>";
    }
}
としてみましたが、画像が表示はできませんでした(html ファイルではこの構文で表示できました)。
テキストフィールドに画像リンクをつける場合には、何かギミックが必要なのでしょうか?
ひろゆき
Åê¹ÆNo.25898
投稿日時: 2006-6-3 22:39
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: ActionScript でボタンが表示できない
mc.txtField.html = true;
mc.txtField.wordWrap = true;
mc.txtField.htmlText = 
"<a href='http://www.yahoo.co.jp'><img src='button.JPG' border='0' width='30' height='30'></a>";
で、いかがでしょ?
#横長になるので、一部改行してます。

念のため「button.JPG」でなく「button.jpg」でも試してみては?
#画像ファイルも小文字で。


----------------
質問する際は、回答者に具体的な情報を与えてください。

Fla4man
Åê¹ÆNo.25901
投稿日時: 2006-6-4 10:33
職人
居住地: かまくら
投稿: 517
使用環境:
WinMe,Win2000,
Flash4,アズさん,大仏、delphi
Re: ActionScript でボタンが表示できない
テキストフィールドは
wordWrapをtrueにしないとjpegは表示しません。

メモ帳でswfを作るという事をしていたので
実はこれにはまりました。

昨年プロパティを一個一個いじってやってわかったことです。

あとFAQのためにもhrefはURLではなくて
<a href="asfunction:testfunc1"><img src="button.jpg" width="30" height="30" ></a>

みたく「ボタンで関数実行サンプル」にしといたほうが良いのではないかと思います。

このテキストフィールドでボタン作戦はシンプルさと汎用性が目的なので
マウスオーバーイベントとか使いたい場合は
普通に「ボタン」のFlashを生成するのがいいと思います。
画像はswfも使えるし
とりあえずマウスオーバー時には指先マークになるので

テキストフィールドに余計な変数を抱かせることで
チェックボックスとかラジオボタンとか結構自由に作れるんではないでしょうか。


----------------
通常のハンドル名:×○○× ねた回収モードに突入 現在1/100

永井勝則
Åê¹ÆNo.25904
投稿日時: 2006-6-4 12:03
職人
居住地: 白馬村
投稿: 796
使用環境:
Windows 7 :Flash CS4:
10.6.8 :Flash CS5.5
Re: ActionScript でボタンが表示できない
横入りですいません。
FAMEというのが面白そうでしたので、自分で試してみました。
参考にしたチュートリアル
http://www.communitymx.com/content/article.cfm?cid=F3ECF&print=true

2つとも当方の即席の環境では動作する模様です。

Buttonコンポーネントをライブラリに置いて書き出したSWFが必要です(つまりFlash IDEが要る)。

import mx.controls.Button;
class jp.himco.ButtonCreate {
	private var myBtn2:Button;
	
	function ButtonCreate() {
		Flashout.log("constructor invoked");
			}
	public static function main() {
		var b:ButtonCreate = new ButtonCreate();
		b.create();
	}
	public function create():Void {
		myBtn2 = Button(_root.attachMovie("Button", "myBtn2", 1, {_width:100, _height:22}));
		myBtn2.label="がんばれ日本!";
	}
}



ひろゆきさんの指摘を含めたスクリプト

class jp.himco.ButtonCreate {
	static function main() {
		var app:ButtonCreate = new ButtonCreate(_root);
	}
	function ButtonCreate(mc:MovieClip) {
		mc.createTextField("txtField", mc.getNextHighestDepth(), 10, 10, 40, 40);
		mc.txtField.html = true;
		mc.txtField.wordWrap=true;
		mc.txtField.htmlText =
 "<a href='http://www.yahoo.co.jp'><img src='button.jpg' border='0' width='30' height='30'></a>";
	}
}


----------------
永井勝則:
himco.jp :

あきる
Åê¹ÆNo.25908
投稿日時: 2006-6-4 13:54
新米
居住地: さいたま
投稿: 4
使用環境:
WindowsXP
Eclipse + ASDT + Flashout + MTASC
Eclipse + IDE for Laszlo
OpenLaszloServer
Re: ActionScript でボタンが表示できない
ひろゆきさん、Fla4man さん、永井勝則さん回答ありがとうございます。

永井勝則さんの載せてくれた下段のソースで試してみましたが、
wordWrap が true になっているのに jpg が表示されませんでした。
画像の形式が悪いのかと png, gif でも試しましたがダメでした。

とすると私の FAME の環境設定のせいなのかな、とも考えられるのでその辺をふくめて原因の調査中です。。。

部品についてですが、ボタン以外にもラジオ、チェックボックス、コンボ、リストなども Flash コンポーネントの代替手段を考えなくてはいけないのですね。
FAME での GUI 作成は予想以上に大変なことが分かりました。
永井勝則
Åê¹ÆNo.25912
投稿日時: 2006-6-4 18:38
職人
居住地: 白馬村
投稿: 796
使用環境:
Windows 7 :Flash CS4:
10.6.8 :Flash CS5.5
Re: ActionScript でボタンが表示できない
わたしのFAME設定は、上記で引用したチュートリアルのまんまです。
FAMEのEはインストールしていましたが、あとは昨日インストールしたものです、
というか、FAMは存在すら知らなかったので、今回が存在を知るきっかけとなり感謝しています。


----------------
永井勝則:
himco.jp :

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

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