<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Bitmap &#8211; Mach3.laBlog</title>
	<atom:link href="https://blog.mach3.jp/tag/bitmap/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.mach3.jp</link>
	<description></description>
	<lastBuildDate>Mon, 03 May 2010 21:56:00 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>
	<item>
		<title>AS3実験室: 画像を読み込んでボタンにする～SimpleButtonの巻</title>
		<link>https://blog.mach3.jp/2010/05/03/as3-simplebutton-with-bitmap.html</link>
		
		<dc:creator><![CDATA[mach3]]></dc:creator>
		<pubDate>Mon, 03 May 2010 21:56:00 +0000</pubDate>
				<category><![CDATA[Laboratory]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Bitmap]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[SimpleButton]]></category>
		<guid isPermaLink="false">http://lab.mach3.jp/2010/05/03/as3%e5%ae%9f%e9%a8%93%e5%ae%a4-%e7%94%bb%e5%83%8f%e3%82%92%e8%aa%ad%e3%81%bf%e8%be%bc%e3%82%93%e3%81%a7%e3%83%9c%e3%82%bf%e3%83%b3%e3%81%ab%e3%81%99%e3%82%8b%ef%bd%9esimplebutton%e3%81%ae%e5%b7%bb.html</guid>

					<description><![CDATA[AS3実験室: 画像を読み込んでボタンにするを書いたあとに気付いたのですが、 SimpleButtonという便利なクラスが存在しておりまして、 これを使った方がより簡単にボタン化出来るので、フォローとしてログっておきます [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p><a href="/2010/05/as3-bitmapbutton.html">AS3実験室: 画像を読み込んでボタンにする</a>を書いたあとに気付いたのですが、<br />
SimpleButtonという便利なクラスが存在しておりまして、<br />
これを使った方がより簡単にボタン化出来るので、フォローとしてログっておきます。</p>



<figure class="wp-block-image"><img decoding="async" src="http://lh4.ggpht.com/_JJkNs5Ixl70/S97GN4U-B4I/AAAAAAAAA4A/kJzsGboyxdg/s800/201005032149.png" alt="SimpleButton"/></figure>



<p></p>



<span id="more-44"></span>



<p>途中までは前記事と似たような処理なのでちょっと割愛してるところもあるのでご注意。</p>



<h2 class="wp-block-heading">1. 画像の読み込み</h2>


<pre class="wp-block-code"><span><code class="hljs language-php"><span class="hljs-keyword">private</span> <span class="hljs-keyword">var</span> bl:BulkLoader = <span class="hljs-keyword">new</span> BulkLoader(<span class="hljs-string">"imageloader"</span>);

<span class="hljs-comment">/* 中略 */</span>

bl.add( <span class="hljs-string">"images/button_normal.png"</span> );
bl.add( <span class="hljs-string">"images/button_over.png"</span> );
bl.add( <span class="hljs-string">"images/button_down.png"</span> );
bl.addEventListener( BulkProgressEvent.COMPLETE, initialize );
bl.start();
</code></span></pre>


<h2 class="wp-block-heading">2. SimpleButtonをつくる</h2>


<pre class="wp-block-code"><span><code class="hljs language-javascript"><span class="hljs-keyword">var</span> btn:SimpleButton = <span class="hljs-keyword">new</span> SimpleButton(
    <span class="hljs-keyword">new</span> Bitmap(bl.getBitmapData(<span class="hljs-string">"images/button_normal.png"</span>)),
    <span class="hljs-keyword">new</span> Bitmap(bl.getBitmapData(<span class="hljs-string">"images/button_over.png"</span>)),
    <span class="hljs-keyword">new</span> Bitmap(bl.getBitmapData(<span class="hljs-string">"images/button_down.png"</span>)),
    <span class="hljs-keyword">new</span> Bitmap(bl.getBitmapData(<span class="hljs-string">"images/button_normal.png"</span>))
);
addChild(btn);
</code></span></pre>


<p><a href="http://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/flash/display/SimpleButton.html">SimpleButton &#8211; ActionScript 3.0</a></p>



<p>使い方は上記リンク参照。余計なもの（!?）をimportしなくていい分心地よいです。</p>



<p>ただし、このままでは<a href="/2010/05/as3-bitmapbutton.html">BitmapButton</a>にはあった「選択時」の状態が使用できません。<br />
この点は今頭を悩ましているところですね。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<dl>
<dt>2010/05/17</dt>
<dd>さすがに端折りすぎたのでコードを追記</dd>
<dt>2010/05/24</dt>
<dd>フォロー記事書きました。<br />
<a href="/2010/05/as3-simpletogglebutton.html">AS3実験室: SimpleButtonクラスをトグル出来るように拡張した「SimpleToggleButton」</a></dd>
</dl>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>AS3実験室: 画像を読み込んでボタンにする</title>
		<link>https://blog.mach3.jp/2010/05/02/as3-bitmapbutton.html</link>
		
		<dc:creator><![CDATA[mach3]]></dc:creator>
		<pubDate>Sun, 02 May 2010 02:34:00 +0000</pubDate>
				<category><![CDATA[Laboratory]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Bitmap]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[SimpleButton]]></category>
		<guid isPermaLink="false">http://lab.mach3.jp/2010/05/02/as3%e5%ae%9f%e9%a8%93%e5%ae%a4-%e7%94%bb%e5%83%8f%e3%82%92%e8%aa%ad%e3%81%bf%e8%be%bc%e3%82%93%e3%81%a7%e3%83%9c%e3%82%bf%e3%83%b3%e3%81%ab%e3%81%99%e3%82%8b.html</guid>

					<description><![CDATA[これも意外と頻出する処理ではないでしょうか。 読み込んだビットマップデータをボタン化する処理を、面倒なのでクラス化してみました。 BitmapButton Download : BitmapButton パブリック プロ [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>これも意外と頻出する処理ではないでしょうか。<br />
読み込んだビットマップデータをボタン化する処理を、面倒なのでクラス化してみました。</p>



<figure class="wp-block-image"><img decoding="async" src="http://lh5.ggpht.com/_JJkNs5Ixl70/S9xgPZSz5aI/AAAAAAAAA34/nVejL_S7M5E/s800/201005020105.png" alt="BitmapButton"/></figure>



<p></p>



<span id="more-45"></span>



<h2 class="wp-block-heading">BitmapButton</h2>



<p><a href="https://docs.google.com/uc?id=0B7k6jIWYcmkLMGViNTBmYWEtY2UwMC00NmJiLTk4NjctYjk4Y2VhM2Y0OTRm&amp;export=download&amp;hl=ja">Download : BitmapButton</a></p>



<h3 class="wp-block-heading">パブリック プロパティ</h3>



<dl>
<dt>hitRect : Rectangle = null</dt>
<dd>ヒット領域をRectangleで設定。 nullの場合は画像にあわせたヒット領域になります。</dd>
<dt>selected : Boolean = false</dt>
<dd>ボタンの選択状態を示すBoolean値。</dd>
</dl>



<h3 class="wp-block-heading">パブリック メソッド</h3>



<dl>
<dt>render() : void</dt>
<dd>setImagesで渡されたBitmapDataを元にボタンを生成します。</dd>
<dt>setImages( _config : Object ) : void</dt>
<dd>normalImage（通常時）、overImage（マウスオーバー時）、downImage（マウスダウン時）、selectedImage（選択時）の画像をBitmapDataで格納したオブジェクトを渡します。</dd>
</dl>



<h2 class="wp-block-heading">簡単な使い方</h2>



<p>インポートをお忘れなく。</p>


<pre class="wp-block-code"><span><code class="hljs language-css"><span class="hljs-selector-tag">import</span> <span class="hljs-selector-tag">jp</span><span class="hljs-selector-class">.mach3</span><span class="hljs-selector-class">.ui</span><span class="hljs-selector-class">.BitmapButton</span>
</code></span></pre>


<h3 class="wp-block-heading">1. 画像の用意</h3>



<figure class="wp-block-image"><img decoding="async" src="http://lh5.ggpht.com/_JJkNs5Ixl70/S9xgPSD3G5I/AAAAAAAAA38/I4Amwnf9qek/s800/201005020107.png" alt="各ステータス画像の用意"/></figure>



<p></p>



<p>こんな感じで画像を用意しましょう。</p>



<h3 class="wp-block-heading">2. 画像の読み込み</h3>



<p><a href="/2010/04/as3-bulkloader.html">以前記事で紹介</a>した<a href="http://code.google.com/p/bulk-loader/">BulkLoader</a>を使ってみます。</p>


<pre class="wp-block-code"><span><code class="hljs language-php"><span class="hljs-keyword">private</span> <span class="hljs-keyword">var</span> bl:BulkLoader = <span class="hljs-keyword">new</span> BulkLoader( <span class="hljs-string">"imageloader"</span> );

<span class="hljs-comment">/* 中略 */</span>

bl.add( <span class="hljs-string">"images/button_normal.png"</span> );
bl.add( <span class="hljs-string">"images/button_over.png"</span> );
bl.add( <span class="hljs-string">"images/button_down.png"</span> );
bl.add( <span class="hljs-string">"images/button_selected.png"</span> );
bl.addEventListener( BulkProgressEvent.COMPLETE, initialize );
bl.start();
</code></span></pre>


<h3 class="wp-block-heading">3. BitmapButtonインスタンスの生成</h3>



<p>completeイベントに設定したinitializeでビットマップボタンを生成してみます。</p>


<pre class="wp-block-code"><span><code class="hljs language-php"><span class="hljs-keyword">private</span> <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">initialize</span><span class="hljs-params">( e:Event )</span> : <span class="hljs-title">void</span> </span>{
    <span class="hljs-keyword">var</span> btn:BitmapButton = <span class="hljs-keyword">new</span> BitmapButton;
    btn.setImages( {
        normalImage: bl.getBitmapData( <span class="hljs-string">"images/button_normal.png"</span> ),
        overImage: bl.getBitmapData( <span class="hljs-string">"images/button_over.png"</span> ),
        downImage: bl.getBitmapData( <span class="hljs-string">"images/button_down.png"</span> ),
        selectedImage: bl.getBitmapData( <span class="hljs-string">"images/button_selected.png"</span> )
    } );
    btn.render();
    addChild( btn );
}
</code></span></pre>


<p>各ステータスの画像を設定する<em>setImages()</em>は、<br />
BitmapDataを格納したnormalImage, overImage,<br />
downImage, selectedImageらをまとめたオブジェクトを引数として受け取ります。<br />
あとは<em>render()</em>でボタンイメージを生成し、addChild。</p>



<h3 class="wp-block-heading">4. イベントなど</h3>



<p>Spriteを継承しているので、イベントなどはよきにはからえ、で。</p>


<pre class="wp-block-code"><span><code class="hljs language-css"><span class="hljs-selector-tag">btn</span><span class="hljs-selector-class">.addEventListener</span>( <span class="hljs-selector-tag">MouseEvent</span><span class="hljs-selector-class">.CLICK</span>, <span class="hljs-selector-tag">myFunc</span> );
</code></span></pre>


<h3 class="wp-block-heading">5. 選択状態の変更</h3>



<p>selectedプロパティをtrueにすることで、選択時の状態にする事ができます。<br />
トグルボタンなどを作りたい時はこちらを利用します。</p>


<pre class="wp-block-code"><span><code class="hljs language-javascript">btn.selected = <span class="hljs-literal">true</span>
</code></span></pre>


<p>こんな感じで作ってみたわけですが、何かの役にたてば幸いです。<br />
とりあえず自分で使おう。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<dl>
<dt>2010/05/02</dt>
<dd>SimpleButtonを使えばもっと楽だという事に次の日気づきました</dd>
<dt>2010/05/03</dt>
<dd>フォロー記事書きました<br />
<a href="/2010/05/as3-simplebutton.html">AS3実験室: 画像を読み込んでボタンにする～SimpleButtonの巻</a></dd>
<dt>2010/05/24</dt>
<dd>フォロー記事書きました<br />
<a href="/2010/05/as3-simpletogglebutton.html">AS3実験室: SimpleButtonクラスをトグル出来るように拡張した「SimpleToggleButton」</a></dd>
</dl>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
