質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Flash

Flashは、Webページにアニメーション、ビデオ、また対話型のアプリケーションを埋め込むためにAdobe社が提供しているクロスプラットフォームのインターネットマルチメディアランタイムです。

ActionScript 3

ActionScript 3 (AS3)はAdobe FrashとAIRプラットフォームによる、オープンソースかつオブジェクト指向のプログラミング言語です。AS3はRIA、モバイルアプリケーション、デスクトップアプリケーションなど広く使われます。

Q&A

1回答

1760閲覧

ペンサイズの選択をプルダウン式からラジオボタン式にしたい

syosinsyapurogu

総合スコア64

Flash

Flashは、Webページにアニメーション、ビデオ、また対話型のアプリケーションを埋め込むためにAdobe社が提供しているクロスプラットフォームのインターネットマルチメディアランタイムです。

ActionScript 3

ActionScript 3 (AS3)はAdobe FrashとAIRプラットフォームによる、オープンソースかつオブジェクト指向のプログラミング言語です。AS3はRIA、モバイルアプリケーション、デスクトップアプリケーションなど広く使われます。

0グッド

0クリップ

投稿2016/11/07 07:30

いつもお世話になっております。

こちらを参考にAction Script3でスプレーブラシを作成しています。

今はほぼ完成状態なのですが一つだけわからないことがあり質問させていただきます。

イメージ説明

上記画像のものを作成しました。
size5pxとテキストの表示されている左にあります白い丸を押すと画像のようにプルダウンが表示されます。
灰色の小さい丸と大きい丸こちらでペンサイズの変更をしています。

そして今回わからないことなのですが
ボタンの大きさを選択できるものが二種類しかないのでラジオボタン式にしてずっと表示させておこうと思ったのですが、
コードをいじるとここでわからないことがあります。

Main.as

1 class Size_get extends Sprite 2 { 3 public var text:TextField = new TextField(); 4 public var frm:TextFormat = new TextFormat(); 5 public var get_size:Number = 5; 6 public var sizes:Array = [5,15]; 7 public var sp:Sprite = new Sprite(); 8 public var m_obj:Main; 9 10 public var btns:Array = new Array(sizes.length); 11 12 public function Size_get(m:Main) 13 { 14 m_obj = m; 15 sp.graphics.beginFill(0xFFFFFF, 1); 16 sp.graphics.drawCircle(5, 5, 10); 17 sp.graphics.endFill(); 18 this.addChild(sp); 19 text.text = "size " + String(get_size) + " px"; 20 text.x = 20; 21 text.y = -5; 22 frm.color = 0xFFFFFF; 23 text.setTextFormat(frm); 24 this.addChild(text); 25 sp.buttonMode = true; 26 sp.addEventListener(MouseEvent.CLICK, onClick); 27 } 28 public function onClick(evt:MouseEvent):void { 29 trace("onClick "); 30 m_obj.stop_act(); 31 sp.removeEventListener(MouseEvent.CLICK, onClick); 32 for (var i:Number = 0; i < sizes.length; i++) { 33 btns[i] = new button(100, sizes[i]*2 + 6); 34 btns[i].x = 0; 35 if (i == 0) { 36 btns[i].y = 30; 37 }else { 38 btns[i].y = btns[i - 1].y + (sizes[i-1]*2+6); 39 } 40// trace("i " + i + " y " + btns[i].y+" h "+(sizes[i-1]*2+6)); 41 btns[i].graphics.beginFill(0xFFFFFF, 1); 42 btns[i].graphics.drawCircle(50, sizes[i] + 3, sizes[i]); 43 btns[i].name =i; 44// trace("name i "+i+" "+btns[i].name) 45 this.addChild(btns[i]); 46 btns[i].addEventListener(MouseEvent.CLICK, onClick1); 47 btns[i].addEventListener(MouseEvent.MOUSE_OVER, onOver); 48 } 49 } 50 public function onClick1(evt:MouseEvent):void { 51 var num:int = int(evt.currentTarget.name); 52 trace("onClick1 " + num+" btns.length "+btns.length); 53 removeEventListener(MouseEvent.CLICK, onClick1); 54 removeEventListener(MouseEvent.MOUSE_OVER, onOver); 55 text.text = "size " + String(sizes[num]) + " px"; 56 frm.color = 0xFFFFFF; 57 text.setTextFormat(frm); 58 get_size = sizes[num]; 59 for (var i:Number = 0; i < btns.length; i++) { 60 removeChild(btns[i]); 61 } 62 sp.addEventListener(MouseEvent.CLICK, onClick); 63 m_obj.start_act(); 64 } 65 public function onOver(evt:MouseEvent):void { 66 var num:int = int(evt.currentTarget.name); 67 text.text = "size " + String(sizes[num]) + " px"; 68 frm.color = 0xFFFFFF; 69 text.setTextFormat(frm); 70 } 71 } 72 import flash.display.Sprite; 73 import flash.events.MouseEvent; 74 import flash.events.Event; 75 import flash.text.TextField; 76 import flash.text.TextFormat; 77

上記コードがペンサイズの変更に該当するコードなのですが適当にたぶんここだろって思ったところを消したりコードを変えたりしたのですがペンサイズの選択自体が丸ごと消えたりなどしてうまくいきません。

上記コードのどの部分がプルダウン式のサイズ変更に該当するでしょうか?
ご教授お願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

btns が配列(array)になっていてそれに サイズが 5と15の button クラスが代入されていますよね。
また、そのボタンをクリックしたときのためのイベントリスナーは
btns[i].addEventListener(MouseEvent.CLICK, onClick1);
として、それぞれのボタンに割り当てられていて、onClick1 とあるように、実際の処理は
public function onClick1(evt:MouseEvent):void {}
に書かれています。
これで答えになっていますか?

投稿2016/11/12 07:08

kenics

総合スコア179

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問