<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
   <title>1ka2ka.com</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/" />
   <link rel="self" type="application/atom+xml" href="http://1ka2ka.com/atom.xml" />
   <id>tag:1ka2ka.com,2008://14</id>
   <updated>2008-11-12T15:05:32Z</updated>
   <subtitle>Flash / ActionScript / Flash Lite の Tips やサンプルソースなどを公開しているブログ。その他、Web に関する時事やネタなども紹介。</subtitle>
   <generator uri="http://www.sixapart.com/movabletype/">Movable Type 3.33-ja</generator>

<entry>
   <title>FL3 | RSS リーダー</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200811/13_000838.html" />
   <id>tag:1ka2ka.com,2008://14.1730</id>
   
   <published>2008-11-12T15:08:38Z</published>
   <updated>2008-11-12T15:05:32Z</updated>
   
   <summary>先日エントリした xml 読み込みのサンプルをちょっと発展させて rss リーダーなんかを作ってみようと思った。 しかし、Flash Lite の RSS リーダーって需要あるのかな？ 最初にボタンを...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="5000-Flash Lite 3.0" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="830" label="RSS" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="831" label="リーダー" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[先日エントリした <a href="/archives/200811/12_000642.html">xml 読み込みのサンプル</a>をちょっと発展させて rss リーダーなんかを作ってみようと思った。

しかし、Flash Lite の RSS リーダーって需要あるのかな？
最初にボタンを押さないと読み込めないのがやっぱりネックになってくるよね…。

まぁ、とりあえず、そんな諸事情はさておき検証のためにささっとサンプルを作成。

<a href="http://em00.com/fl3_rss/fl3_rss.swf"><img src="../../uploadfile/081113/qr.gif" alt="" width="74" height="74" /></a>

サンプルではこのブログの RSS を読み込ませているのが、em00.com から 1ka2ka.com のデータを読み込むため、課題となるのが異なるドメイン同士での通信ということ。

Flash Lite 2.0 からは、セキュリティー強化されているため、異なるドメイン間でのデータの通信に対して制限がかけられているはず。一応、何も対応処置をせずに異なるドメインの RSS を取得してみたが結果はダメだった…。

<pre><code>
&lt;?xml&nbsp;version=&quot;1.0&quot;?&gt;
&lt;!DOCTYPE&nbsp;cross-domain-policy&nbsp;SYSTEM&nbsp;&quot;http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd&quot;&gt;
&lt;cross-domain-policy&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;site-control&nbsp;permitted-cross-domain-policies=&quot;all&quot;&nbsp;/&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;allow-access-from&nbsp;domain=&quot;em00.com&quot;&nbsp;/&gt;
&lt;/cross-domain-policy&gt;
</code></pre>

結局、上記のようにクロスドメインポリシー（crossdomain.xml）を設置することで正常に読み込み可能となった。

サンプルのソースはこちら

<pre><code>
//CASA Frameworks 1.0.8
import org.casaframework.load.data.xml.XmlLoad;
import org.casaframework.util.XmlUtil;
//変数
var xmlLoad:XmlLoad;
var rssUrl:String = "http://1ka2ka.com/index.xml";
result.htmlText = "";
//初期処理
initStage();
initBtn();
//ステージ設定
function initStage():Void {
	//ステージサイズ
	Stage.scaleMode = "showAll";
	Stage.align = "";
	//画質設定
	_quality = "BEST";
}
//ボタン設定
function initBtn():Void {
	startBtn._focusrect = false;
	startBtn.onRelease = function() {
		loadXML(rssUrl);
		this._visible = false;
	}
	startBtn.onRollOver = startBtn.onDragOver = function() {
		var c:Color = new Color(this.base);
		var ct:Object = {ra: 100, rb: 204, ga: 100, gb: 0, ba: 100, bb: 0, aa: 100, ab: 0};
		c.setTransform(ct);
	}
	startBtn.onRollOut = startBtn.onDragOut = function() {
		var c:Color = new Color(this.base);
		var ct:Object = {ra: 100, rb: 0, ga: 100, gb: 0, ba: 100, bb: 0, aa: 100, ab: 0};
		c.setTransform(ct);
	}
}
//XML処理
function loadXML(xmlUrl) {
	xmlLoad = new XmlLoad(xmlUrl);
	xmlLoad.addEventObserver(this, XmlLoad.EVENT_LOAD_COMPLETE, "onXmlLoadComplete");
	xmlLoad.start();
}
function onXmlLoadComplete(sender:XmlLoad):Void {
	var xmlObject:Object = XmlUtil.xmlToObject(xmlLoad.getXml())["rss"][0]["channel"][0];
	for (var i = 0; i < 10; i++) {
		var title:String = xmlObject.item[i].title[0].nodeValue;
		var link:String = xmlObject.item[i].link[0].nodeValue;
		var mc:MovieClip = attachMovie("rssBtn", "rBtn" + i, getNextHighestDepth())
		mc._x = 10;
		mc._y = 45 + 18 * i;
		mc.title.text = title;
		mc.url = link;
		mc.onRelease = function() {
			getURL(this.url);
		}
	}
}
</code></pre>]]>
      
   </content>
</entry>
<entry>
   <title>FL3 | xml 読み込み with CASA Frameworks</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200811/12_000642.html" />
   <id>tag:1ka2ka.com,2008://14.1729</id>
   
   <published>2008-11-11T15:06:42Z</published>
   <updated>2008-11-11T15:13:39Z</updated>
   
   <summary>今のところ、Flash Lite での xml を活用するコンテンツが思いつかないのだけども、サンプルだけは作っておこうと思う。 PC 版の Flash コンテンツなどで何度も利用しているので、実際に...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="5000-Flash Lite 3.0" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="828" label="CASA Frameworks" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="826" label="xml" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[今のところ、Flash Lite での xml を活用するコンテンツが思いつかないのだけども、サンプルだけは作っておこうと思う。

PC 版の Flash コンテンツなどで何度も利用しているので、実際にはそう難しいことはないのだけども、Flash Lite コンテンツで CASA Frameworks が正常に動作するかを兼ねて検証してみる。

xml のサンプルはこんな内容。

<pre><code>
&lt;data&gt;
	&lt;item&gt;アイテム1&lt;/item&gt;
	&lt;item&gt;アイテム2&lt;/item&gt;
	&lt;name&gt;
		&lt;No&gt;100&lt;/No&gt;
		&lt;title&gt;タイトル1&lt;/title&gt;
		&lt;param&nbsp;a=&quot;a1&quot;&nbsp;b=&quot;b1&quot;&nbsp;/&gt;
	&lt;/name&gt;
&lt;/data&gt;
</code></pre>

それで、この xml を Flash Lite 3.0 で読み込んで簡単にテキスト出力してみる。

<a href="http://em00.com/fl3_xml/fl3_xml.swf"><img src="../../uploadfile/081112/qr.gif" alt="" width="74" height="74" /></a>

見事に読み込み完了。さらに、CASA Frameworks も正常に動作するため E4X っぽく XML が扱えるので超ラク！

ただ、CASA Frameworks をインポートすると約 9KB ほど容量が増加するようだ。まぁそんなに頻繁に使う機会は少ないだろうけども…。

サンプルのソースはこんな感じ。

<pre><code>
//CASA Frameworks 1.0.8
import org.casaframework.load.data.xml.XmlLoad;
import org.casaframework.util.XmlUtil;
/変数
var xmlLoad:XmlLoad;
var xmlUrl:String = "sample.xml";
result.text = "";
//初期処理
initStage();
initBtn();
//ステージ設定
function initStage():Void {
	//ステージサイズ
	Stage.scaleMode = "showAll";
	Stage.align = "";
	//画質設定
	_quality = "BEST";
}
//ボタン設定
function initBtn():Void {
	startBtn._focusrect = false;
	startBtn.onRelease = function() {
		loadXML("sample.xml");
	}
	startBtn.onRollOver = startBtn.onDragOver = function() {
		var c:Color = new Color(this.base);
		var ct:Object = {ra: 100, rb: 204, ga: 100, gb: 0, ba: 100, bb: 0, aa: 100, ab: 0};
		c.setTransform(ct);
	}
	startBtn.onRollOut = startBtn.onDragOut = function() {
		var c:Color = new Color(this.base);
		var ct:Object = {ra: 100, rb: 0, ga: 100, gb: 0, ba: 100, bb: 0, aa: 100, ab: 0};
		c.setTransform(ct);
	}
}
//XML処理
function loadXML(xmlUrl) {
	xmlLoad = new XmlLoad(xmlUrl);
	xmlLoad.addEventObserver(this, XmlLoad.EVENT_LOAD_COMPLETE, "onXmlLoadComplete");
	xmlLoad.start();
}
function onXmlLoadComplete(sender:XmlLoad):Void {
	var xmlObject:Object = XmlUtil.xmlToObject(xmlLoad.getXml());
	result.text += xmlObject.data[0].item[0].nodeValue + "\n";
	result.text += xmlObject.data[0].item[1].nodeValue + "\n";
	result.text += xmlObject.data[0].name[0].No[0].nodeValue + "\n";
	result.text += xmlObject.data[0].name[0].title[0].nodeValue + "\n";
	result.text += xmlObject.data[0].name[0].param[0].a + "\n";
	result.text += xmlObject.data[0].name[0].param[0].b + "\n";
}
</code></pre>]]>
      
   </content>
</entry>
<entry>
   <title>FL3 | loadMovie の検証サンプル</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200811/11_213713.html" />
   <id>tag:1ka2ka.com,2008://14.1728</id>
   
   <published>2008-11-11T12:37:13Z</published>
   <updated>2008-11-11T12:40:35Z</updated>
   
   <summary>ぶっちゃけ Flash Lite で外部ファイル読み込みという構成自体にあまり意味がない（汗 理由は単純。NTT docomo の場合、外部読み込みの容量の累計が 100KB を超えると「最大サイズを...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="5000-Flash Lite 3.0" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="824" label="外部" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="825" label="容量" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="823" label="画像" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[ぶっちゃけ Flash Lite で外部ファイル読み込みという構成自体にあまり意味がない（汗

理由は単純。NTT docomo の場合、外部読み込みの容量の累計が 100KB を超えると「最大サイズを超えました」というエラーが表示されてしまうため。他キャリアでは累計に関係なく読み込める場合もあるのだが…。

まぁ、それでも、例えば、ランダムで画像を読み込んでコンテンツがそこで終了してしまうような構成だと、外部読み込みを行うことでバリエーションを増やすことができるといえばできる。あまり活用事例が少なそうな印象だけども（;´д｀）ﾉ

いつか役立つ日も来るかもしれないと、とりあえずサンプルを作ってみた。

<a href="http://em00.com/fl3_loadMovie/fl3_loadMovie.swf"><img src="../../uploadfile/081111/qr.gif" alt="" width="74" height="74" /></a>

ちなみに、docomo の SH905i で検証してみたところ、やはり累計 100KB を超えるとファイルが読み込めない。アンロード処理を行ってもムリ。ちなみに同じファイルは何度もで読み込み可能。

また、ローディング中の容量はやはり取得できないみたいでローディング状況を表示することもできないのかな…。あとは、JPG / SWF ファイルは問題なかったのだけども、GIF / PNG / BMP 画像は読み込み不可。画像形式に関しては携帯の機種などにも依存されるみたい（？）。

サンプルのソースはこんな感じ。

<pre><code>
//変数
var itemArr:Array = [""];
itemArr.push("01.jpg");
itemArr.push("01.jpg");
itemArr.push("02.jpg");
itemArr.push("03.jpg");
itemArr.push("04.gif");
itemArr.push("05.swf");
itemArr.push("06.png");
itemArr.push("07.bmp");
//初期処理
initStage();
initBtn();
initKeyEvent();
bytes.text = _root.getBytesTotal();
//ステージ設定
function initStage():Void {
	//ステージサイズ
	Stage.scaleMode = "showAll";
	Stage.align = "";
	//画質設定
	_quality = "BEST";
}
//ボタン処理
function initBtn() {
	var btn:MovieClip;
	for (var i = 1; i <= 9; i++) {
		btn = eval("b"+i);
		btn.no = i;
		btn.flag = false;
		btn.loader._visible = false;
		btn.per._visible = false;
		//btn._focusrect = false;
		btn.onRelease = function() {
			if (this.flag) {
				unloadObj(this);
			} else {
				loadObj(this.no, this);
			}
		}
	}
}
//キーイベント
function initKeyEvent() {
	var keyListener:Object = new Object();
	keyListener.onKeyDown = function () {
		var key = chr(Key.getAscii());
		var btn = eval("b" + key);
		if (btn.flag) {
			unloadObj(btn);
		} else {
			loadObj(key, btn);
		}
	}
	Key.addListener(keyListener); 
}
//ロード処理
function loadObj(n:Number, btn:MovieClip) {
	var loadListener:Object = new Object();
	loadListener.onLoadStart = function(target:MovieClip) {
	    btn.loader._visible = true;
		btn.per._visible = true;
		btn.per.text = "0";
	}
	loadListener.onLoadProgress = function(target:MovieClip, bytesLoaded:Number, bytesTotal:Number):Void {
	    btn.per.text = Math.round(bytesLoaded / bytesTotal * 100);
	}
	loadListener.onLoadInit = function(target:MovieClip) {
	    btn.loader._visible = false;
		btn.per._visible = false;
		btn.flag = true;
		sizeAdjust(btn.base, btn.mask);
		bytes.text = _root.getBytesTotal();
		delete loadListener;
		delete mcl;
	}
	var mcl:MovieClipLoader = new MovieClipLoader();
	mcl.addListener(loadListener);
	mcl.loadClip(itemArr[n], btn.base);
}
function sizeAdjust(img:MovieClip, mask:MovieClip) {
	var gW:Number = mask._width;
	var gH:Number = mask._height;
	img._width = gW;//横に合わせる
	img._yscale = img._xscale;
	if (img._height > gH) {
		img._height = gH;//縦に合わせる
		img._xscale = img._yscale
	}
	img._x = mask._x + (gW - img._width) / 2;
	img._y = mask._y + (gH - img._height) / 2;
}
//アンロード処理
function unloadObj(btn:MovieClip) {
	btn.base.unloadMovie();
	btn.flag = false;
}
</code></pre>]]>
      
   </content>
</entry>
<entry>
   <title>FL3 | capabilities プロパティ一覧と Tweener クラスの実装</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200811/09_001156.html" />
   <id>tag:1ka2ka.com,2008://14.1726</id>
   
   <published>2008-11-08T15:11:56Z</published>
   <updated>2008-11-11T12:35:59Z</updated>
   
   <summary>Capabilities クラス Flash Lite 3.0 のヘルプを何気なく眺めていたら、Capabilities クラスというものを発見。 モバイルのシステムや Flash Player の機...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="5000-Flash Lite 3.0" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="821" label="システム" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="405" label="モバイル" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="655" label="ライブラリ" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="822" label="機能" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[<h2>Capabilities クラス</h2>

Flash Lite 3.0 のヘルプを何気なく眺めていたら、Capabilities クラスというものを発見。

モバイルのシステムや Flash Player の機能を確認できるというシロモノ。

ちょっと気になったのは、screenOrientation で画面の向きを取得できるプロパティ。通常、90度、180度、270度という状況を知ることができる。向きがいろいろ変わるとそれに応じた仕掛けを組み込むことができるようになる。といっても、機種によってこのプロパティがどのように変化するまでかは分からないので今のところは何とも言えないけど…（汗

その他にも画面サイズを取得できる、screenResolutionX や screenResolutionY などもあるので、画面サイズに応じたコンテンツレイアウトも可能かなとか思う。

何かと使う機会もあるかもと思い、capabilities のプロパティ一覧を確認できるサンプルを作成してみた。

<a href="http://em00.com/fl3_capabilities/fl3_capabilities.swf"><img src="../../uploadfile/081109/qr.gif" alt="" width="74" height="74" /></a>

ヘルプの順番と同じになっているので、詳しい解説はヘルプと連動して確認すると良いかもしれない。

ただ何故か hasXMLSocket のみ「このプロパティはありません」というエラーが出てしまう…。ヘルプにはきちんと書かれているのだけど対応していないのだろうか…。とりあえずこの部分の処理はコメントアウトして無視しておいている。

あとは、1画面で収まる情報量ではないので上下キーで画面を移動するようにした。その際のモーション処理に Tweener ライブラリを利用してみることに。

<h2>Flash Lite 3.0 ＋ Tweener ライブラリ</h2>

もちろん Tweener ライブラリは、ActionScript 2.0 版を使用。

<a class="ex" href="http://code.google.com/p/tweener/">http://code.google.com/p/tweener/</a> から「tweener_1_31_74_as2_fl7.zip」をDLして利用してみた。Flash Lite 2.0 にも対応とあるしパブリッシュ時にも容量が最も小さいので良いかなーと。使い方は AS の時とまったく同じ。

サンプルの構成としては、infoArea というインスタンスの中に capabilities のプロパティ一覧をずらずらと並べている。これを空ボタンを使って上下キーで移動させるという処理を行っている。

実機 SH905i で見てみたところ意外と動きはスムーズ。新しい機種のスペックと player のバージョンのおかげかも。

ソースはこんな感じ。

<pre><code>
//1.31.74 for Flash 7+ and Flash Lite 2.0+  
import caurina.transitions.Tweener;
//変数
var infoArea:MovieClip = infoArea;
var defY:Number = 40;
var divY:Number = 200;
var nowY:Number = defY;
var maxY:Number = - (Math.floor(infoArea._height / divY) - 1) * divY + defY;
var nowB:Number;
//初期化
initBtn();
//上下キー処理
function initBtn() {
	//b0.onRelease = b1.onRelease = b2.onRelease = function() { }
	b0.onRollOver = function() {
		var id:Number = 0;
		if (nowB == 1) movePanel(true);
		if (nowB == 2) movePanel(false);
		nowB = id;
	}
	b1.onRollOver = function() {
		var id:Number = 1;
		if (nowB == 2) movePanel(true);
		if (nowB == 0) movePanel(false);
		nowB = id;
	}
	b2.onRollOver = function() {
		var id:Number = 2;
		if (nowB == 0) movePanel(true);
		if (nowB == 1) movePanel(false);
		nowB = id;
	}
	b0._focusrect = b1._focusrect = b2._focusrect = false;
	Selection.setFocus(b0);
}
//パネル制御　ud=true:下降／ud=false:上昇
function movePanel(ud:Boolean) {
	//目標位置設定
	nowY = (ud) ? nowY+divY : nowY-divY;
	nowY = (nowY > defY) ? defY : nowY;
	nowY = (nowY < maxY) ? maxY : nowY;
	//モーション
	Tweener.addTween(infoArea, {
		time:0.5,
		_y:nowY,
		transition:"easeOutSine"
	})
}
</code></pre>]]>
      
   </content>
</entry>
<entry>
   <title>Flash Lite コンテンツのオブジェクトを上下キーで制御する</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200811/08_024914.html" />
   <id>tag:1ka2ka.com,2008://14.1727</id>
   
   <published>2008-11-07T17:49:14Z</published>
   <updated>2008-11-07T17:47:50Z</updated>
   
   <summary>Flash Lite コンテンツの場合、上下キーを押したかどうかの判別は難しい。もしかすると一部機種で可能かもしれないが、汎用的な方法は無いということだ…。 しかし、条件付きではあるが、上下キーでオブ...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="4000-Flash Lite 1.0 / 1.1" scheme="http://www.sixapart.com/ns/types#category" />
         <category term="5000-Flash Lite 3.0" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="816" label="キー" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="819" label="上" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="820" label="下" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="376" label="携帯" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[Flash Lite コンテンツの場合、上下キーを押したかどうかの判別は難しい。もしかすると一部機種で可能かもしれないが、汎用的な方法は無いということだ…。

しかし、条件付きではあるが、上下キーでオブジェクトを制御するような処理は可能。その条件とは、その場面でボタンが存在しないこと。

方法はいたってシンプル。空ボタンを3つ配置し適当に id などを割り振っておく。上下キーを押すことで空ボタンにフォーカスが順々にあたっていくことになるので、移動前のボタンと移動後のボタンの id を比較することで上キーを押したか下キーを押したかを判別できるという感じ。

<h2>Flash Lite 1.1 の場合</h2>

<a href="http://em00.com/fl11_keyUpDown/fl11_keyUpDown.swf"><img src="../../uploadfile/081108/qr_11.gif" alt="" width="74" height="74" /></a>

ちなみに、サンプルでは説明しやすいように、空ボタンではなくグレーの小さなボタンを配置。実際に空ボタンにしてフォーカス表示を非表示にすれば、上下キーでオブジェクトを制御しているように見える。

黒い円図形のインスタンス名を「obj」とし、それぞれのボタンの rollOver イベントを記述していく。そして「moveObj」というラベルを用意し、call() 関数でオブジェクトを制御するスクリプトを実行させるというもの。

<pre><code>
//ボタン（上）のボタンアクション
on (rollOver) {
	btnId = 0;
	if (nowBtnId == 1) UpDown = true;
	if (nowBtnId == 2) UpDown = false;
	nowBtnId = btnId;
	call("moveObj");
}
//ボタン（中）のボタンアクション
on (rollOver) {
	btnId = 1;
	if (nowBtnId == 2) UpDown = true;
	if (nowBtnId == 0) UpDown = false;
	nowBtnId = btnId;
	call("moveObj");
}
//ボタン（下）のボタンアクション
on (rollOver) {
	btnId = 2;
	if (nowBtnId == 0) UpDown = true;
	if (nowBtnId == 1) UpDown = false;
	nowBtnId = btnId;
	call("moveObj");
}
//「moveObj」というラベルに下記のスクリプトを記述
divY = (UpDown) ? -10 : 10;
obj._y += divY;
</code></pre>

<h2>Flash Lite 3.0 の場合</h2>

<a href="http://em00.com/fl3_keyUpDown/fl3_keyUpDown.swf"><img src="../../uploadfile/081108/qr_3.gif" alt="" width="74" height="74" /></a>

基本的には同じ仕組みだけども、同じことを Flash Lite 3.0 でやってみる。

Flash Lite 3.0 の場合、setFocus() が可能なので、一番上のボタンにフォーカスを当てておき、あとは onRollOver イベント処理を記述していく。

<pre><code>
var nowBtnId:Number;
initBtn();
//ボタンイベント
function initBtn() {
	//ボタン（上）
	b0.onRollOver = function() {
		var btnId:Number = 0;
		if (nowBtnId == 1) moveObj(true);
		if (nowBtnId == 2) moveObj(false);
		nowBtnId = btnId;
	}
	//ボタン（中）
	b1.onRollOver = function() {
		var btnId:Number = 1;
		if (nowBtnId == 2) moveObj(true);
		if (nowBtnId == 0) moveObj(false);
		nowBtnId = btnId;
	}
	//ボタン（下）
	b2.onRollOver = function() {
		var btnId:Number = 2;
		if (nowBtnId == 0) moveObj(true);
		if (nowBtnId == 1) moveObj(false);
		nowBtnId = btnId;
	}
	//b0._focusrect = b1._focusrect = b2._focusrect = false;
	Selection.setFocus(b0);
}
//オブジェクト制御
function moveObj(ud:Boolean) {
	//目標位置設定
	var divY:Number = (ud) ? -10 : 10;
	obj._y += divY;
}
</code></pre>]]>
      
   </content>
</entry>
<entry>
   <title>FL3 | 携帯のキーコードを調べてみる</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200811/07_002150.html" />
   <id>tag:1ka2ka.com,2008://14.1724</id>
   
   <published>2008-11-06T15:21:50Z</published>
   <updated>2008-11-11T12:35:48Z</updated>
   
   <summary>Flash Lite 3.0 では、キーコードが取得可能。ふと思いキーコードを取得するサンプルを作ってみる。 というのも、いろいろと検証している時に、上下キーのキーコードって実際にはどうなっているんだ...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="5000-Flash Lite 3.0" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="816" label="キー" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="817" label="コード" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="376" label="携帯" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="818" label="調査" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[Flash Lite 3.0 では、キーコードが取得可能。ふと思いキーコードを取得するサンプルを作ってみる。

というのも、いろいろと検証している時に、上下キーのキーコードって実際にはどうなっているんだろうと思ったのがキッカケ。上下キーのイベントなどの対応範囲を知りたいと思って。

<a href="http://em00.com/fl3_key/fl3_key.swf"><img src="../../uploadfile/081107/qr.gif" alt="" width="74" height="74" /></a>

Flash Lite 3.0 なので、上記URLのコンテンツを閲覧できない機種もあると思う…（汗

とりあえず所持している実機の SH905i で試してみると下記のような結果となった。

<table cellspacing="0" cellpadding="0">
<tr>
<th>&nbsp;</th>
<th>keyCode</th>
<th>keyAscii</th>
<th>chr()</th>
<th>関連キー</th>
</tr>
<tr>
<th>決定</th>
<td>13</td>
<td>13</td>
<td>&nbsp;</td>
<td>ENTER</td>
</tr>
<tr>
<th>上</th>
<td>9</td>
<td>9</td>
<td>&nbsp;</td>
<td>TAB</td>
</tr>
<tr>
<th>下</th>
<td>9</td>
<td>9</td>
<td>&nbsp;</td>
<td>TAB</td>
</tr>
<tr>
<th>1</th>
<td>49</td>
<td>49</td>
<td>1</td>
<td>&nbsp;</td>
</tr>
<tr>
<th>2</th>
<td>50</td>
<td>50</td>
<td>2</td>
<td>&nbsp;</td>
</tr>
<tr>
<th>3</th>
<td>51</td>
<td>51</td>
<td>3</td>
<td>&nbsp;</td>
</tr>
<tr>
<th>4</th>
<td>52</td>
<td>52</td>
<td>4</td>
<td>&nbsp;</td>
</tr>
<tr>
<th>5</th>
<td>53</td>
<td>53</td>
<td>5</td>
<td>&nbsp;</td>
</tr>
<tr>
<th>6</th>
<td>54</td>
<td>54</td>
<td>6</td>
<td>&nbsp;</td>
</tr>
<tr>
<th>7</th>
<td>55</td>
<td>55</td>
<td>7</td>
<td>&nbsp;</td>
</tr>
<tr>
<th>8</th>
<td>56</td>
<td>56</td>
<td>8</td>
<td>&nbsp;</td>
</tr>
<tr>
<th>9</th>
<td>57</td>
<td>57</td>
<td>9</td>
<td>&nbsp;</td>
</tr>
<tr>
<th>0</th>
<td>48</td>
<td>48</td>
<td>0</td>
<td>&nbsp;</td>
</tr>
<tr>
<th>*</th>
<td>56</td>
<td>42</td>
<td>*</td>
<td>&nbsp;</td>
</tr>
<tr>
<th>#</th>
<td>51</td>
<td>35</td>
<td>#</td>
<td>&nbsp;</td>
</tr>
</table>

多分、ここでポイントとなるのが「上」「下」キーだと思う。何故かキーコードが両方とも「9」となり「TAB」キーに相当する結果となった。

これは、Flash Lite コンテンツを PC で閲覧する際に、上は「SHIFT＋TAB」、下は「TAB」に対応しているためのようだ。しかし実際に携帯で確認すると、上下キーの区別がつかない状態となっている。

もしかすると上キーは「SHIFT」も表示されるかなと思っていただけに残念…orz

あとはキャリアや機種によっても微妙に異なってくるのかなーとか思ったりもする（汗

結果的には、上下のキーイベント時には区別する判断がつかないので従来の手法で対応するしかないようだ…。ふーむ。なんだかなーという感じ。

ちなみに、このサンプルのコードはこんな感じ。とりあえずキーに関する情報は網羅しているはず。多分。きっと。

<pre><code>
initKeySys();
initKeyEvent();
	
//システム機能
function initKeySys() {
	k4 = "has4WayKeyAS：" + System.capabilities.has4WayKeyAS + "\n";
	k4 += "hasMappableSoftKeys：" + System.capabilities.hasMappableSoftKeys + "\n";
	k4 += "hasQWERTYKeyboard：" + System.capabilities.hasQWERTYKeyboard + "\n";
	k4 += "softKeyCount：" + System.capabilities.softKeyCount + "\n";
}
//キーイベント
function initKeyEvent() {
	var keyListener:Object = new Object();
	keyListener.onKeyDown = function () {
		k0 = Key.getCode();
		k1 = Key.getAscii();
		k2 = chr(Key.getAscii());
		k3 = ""
		if (Key.isDown(Key.SHIFT)) k3 += "SHIFT ";
		if (Key.isDown(Key.TAB)) k3 += "TAB ";
		if (Key.isDown(Key.END)) k3 += "END ";
		if (Key.isDown(Key.HOME)) k3 += "HOME ";
		if (Key.isDown(Key.SPACE)) k3 += "SPACE ";
		if (Key.isDown(Key.UP)) k3 += "UP ";
		if (Key.isDown(Key.DOWN)) k3 += "DOWN ";
		if (Key.isDown(Key.ENTER)) k3 += "ENTER ";
		if (Key.isDown(Key.PGUP)) k3 += "PGUP ";
		if (Key.isDown(Key.PGDN)) k3 += "PGDN ";
		if (Key.isDown(Key.BACKSPACE)) k3 += "BACKSPACE ";
		if (Key.isDown(Key.CAPSLOCK)) k3 += "CAPSLOCK ";
		if (Key.isDown(Key.CONTROL)) k3 += "CONTROL ";
		if (Key.isDown(Key.DELETEKEY)) k3 += "DELETEKEY ";
		if (Key.isDown(Key.ESCAPE)) k3 += "ESCAPE ";
		if (Key.isDown(Key.INSERT)) k3 += "INSERT ";
		if (Key.isDown(Key.LEFT)) k3 += "LEFT ";
		if (Key.isDown(Key.RIGHT)) k3 += "RIGHT ";
		
		var code = Key.getCode();
		if (code == ExtendedKey.SOFT1) k3 += "SOFT1 ";
		if (code == ExtendedKey.SOFT2) k3 += "SOFT2 ";
		if (code == ExtendedKey.SOFT3) k3 += "SOFT3 ";
		if (code == ExtendedKey.SOFT4) k3 += "SOFT4 ";
		if (code == ExtendedKey.SOFT5) k3 += "SOFT5 ";
		if (code == ExtendedKey.SOFT6) k3 += "SOFT6 ";
		if (code == ExtendedKey.SOFT7) k3 += "SOFT7 ";
		if (code == ExtendedKey.SOFT8) k3 += "SOFT8 ";
		if (code == ExtendedKey.SOFT9) k3 += "SOFT9 ";
		if (code == ExtendedKey.SOFT10) k3 += "SOFT10 ";
		if (code == ExtendedKey.SOFT11) k3 += "SOFT11 ";
		if (code == ExtendedKey.SOFT12) k3 += "SOFT12 ";
	}
	Key.addListener(keyListener); 
}
</code></pre>]]>
      
   </content>
</entry>
<entry>
   <title>FL3.0 で共有オブジェクト（SharedObject）を試してみた</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200811/06_103654.html" />
   <id>tag:1ka2ka.com,2008://14.1723</id>
   
   <published>2008-11-06T01:36:54Z</published>
   <updated>2008-11-06T01:40:30Z</updated>
   
   <summary>Flash Lite 3.0 をもうそろそろ検証しておこうかなと思い、とりあえずは気になっていた共有オブジェクトを試してみることに。 ただ、NTT docomo サイトで Flash Lite共有オブ...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="5000-Flash Lite 3.0" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="377" label="ドコモ" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="815" label="共有オブジェクト" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[Flash Lite 3.0 をもうそろそろ検証しておこうかなと思い、とりあえずは気になっていた共有オブジェクトを試してみることに。

ただ、NTT docomo サイトで <a class="ex" href="http://www.nttdocomo.co.jp/service/imode/make/content/flash/feature/index.html#p15">Flash Lite共有オブジェクト</a>の情報を確認すると、

<blockquote>ブラウザ終了時にキャッシュの削除とあわせて、Flash Lite共有オブジェクト領域も削除されます。</blockquote>

このような記述があるので、せっかくの共有オブジェクトも使いどころが限られそうな予感…（￣-￣ 3）

<h2>準備 - CDK をダウンロード</h2>

ただ、NTT docomo の共有オブジェクトを利用する際には、予め Adobe サイトのデベロッパーセンターから <a class="ex" href="http://www.adobe.com/jp/devnet/devices/development_kits.html#imode">Flash Lite 3.0 対応 NTT DoCoMo 携帯電話用 Adobe Flash CDK</a> をダウンロード＆インストールする必要があるようだ（汗

<img src="../../uploadfile/081106/cdk.gif" alt="" width="470" height="168" />

「Flash Lite 3.0 対応 NTT DoCoMo 携帯電話用 Adobe Flash CDK をダウンロード」のリンク部分でダウンロード可能。

<h2>準備 - CDK をインストール</h2>

上記のファイルを解凍すると、中に「モバイルメタデータ.swf」というファイルが入っている。

このファイルを各OSに対応する場所に格納させる。

<dl>
<dt>Windows Vista PC の場合</dt>
<dd>.../Users/[ユーザ]/AppData/Local/Adobe/Flash CS3/ja/Configuration/WindowsSWF</dd>
<dt>Windows XP PC の場合</dt>
<dd>.../Documents and Settings/[ユーザ]/Local Settings/Application Data/Adobe/Flash CS3/ja/Configuration/WindowsSWF</dd>
<dt>Apple Mac の場合</dt>
<dd>.../Users/[ユーザ]/Library/Application Support/Adobe/Flash CS3/ja/Configuration/WindowsSWF</dd>
</dl>

これで一通りの準備が完了！

<h2>ストレージ・サイズを設定する</h2>

準備が完了したら、Flash を立ち上げ Fla ファイルを開き、「ウインドウ」→「他のパネル」→「モバイルメタデータ」を選択すると下記のようなパネルが出現。

<img src="../../uploadfile/081106/panel.gif" alt="" width="500" height="375" /></a>

この「ストレージ・サイズ」という部分に 1～10 までの整数を設定する。

ストレージ・サイズを設定すると、NTT docomo 機種で共有オブジェクトが利用できるようになる。

しかし、なかなか面倒なもんだね…（汗

<h2>共有オブジェクトのサンプルコンテンツ</h2>

んで、とりあえず作成したサンプルがこれ。Flash Lite 3.0 対応機種じゃないと正常に見れないけども…（汗

<a href="http://em00.com/fl3_SharedObject/fl3_SharedObject.swf"><img src="../../uploadfile/081106/qr.gif" alt="" width="74" height="74" /></a>

いろいろ試してみると下記のような感じだった。
※SH905i で検証

<ul>
<li>ブラウザを終了して再度サンプルを開く⇒共有オブジェクトは初期状態に</li>
<li>ページを更新⇒共有オブジェクトは残っている</li>
<li>HTMLページに遷移した後、再度サンプルへ戻る⇒共有オブジェクトは残っている</li>
<li>別のSWFコンテンツに遷移した後、再度サンプルへ戻る⇒共有オブジェクトは残っている</li>
<li>画面メモに保存⇒共有オブジェクトは残っている</li>
<li>画像で保存⇒共有オブジェクトは無効になる</li>
</ul>

確かにブラウザを終了すると削除されるようで初期状態に戻ってしまう。画面メモで保存すると共有オブジェクトは残るのだけども、待ち受け時には共有オブジェクトが読み込まれない感じ…。個人的に携帯を使いこなしているわけではないので、もしかすると何か別の方法で待ち受けに適用させることもできるのかもしれないが…（汗

あと詳しい説明は割愛するが、該当部分のコードはこんな感じ。まぁ、CDK の中にもサンプルファイルがあるんで参考にすると良いかもしれない。

<pre><code>
function initSo():Void {
	//共有オブジェクトが実装されているかを確認
	if (System.capabilities.hasSharedObjects) {
		//リスナー設定
		SharedObject.addListener("testObject", loadCompleteSo);
		//共有オブジェクトの参照
		sObj = SharedObject.getLocal("testObject");
		//状況表示
		infoTxt.text = "共有オブジェクト - 参照中";
	} else {
		//状況表示
		infoTxt.text = "共有オブジェクト - 使用不可";
	}
}
//ロード完了
function loadCompleteSo(so:SharedObject):Void {
	//状況表示
	infoTxt.text = "共有オブジェクト - ロード完了\n";
	infoTxt.text += "size：" + so.getSize() + " / data：" + sObj.data.No;
	//データ読み込み
	if (so.getSize() == 0) {
		saveSoData(0);
		noTxt.text = "0";
	} else {
		noTxt.text = sObj.data.No;
	}
	//ボタン処理開始
	initTestBtn();
}
//書き込み
function saveSoData(va):Void {
	sObj.data.No = va;
	sObj.flush();
}
</code></pre>]]>
      
   </content>
</entry>
<entry>
   <title>サウンドスペクトラムを試してみた</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200811/03_094240.html" />
   <id>tag:1ka2ka.com,2008://14.1722</id>
   
   <published>2008-11-03T00:42:40Z</published>
   <updated>2008-11-03T00:38:41Z</updated>
   
   <summary>いまさらかもしれないが、Flash Player 9 より実装された音声のスペクトラム情報が取得できる。前々から気になっていたものの、なかなか手をつけられずにいたのだが、ようやくいろいろと試してみるこ...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="2100-Action Script 3.0" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="813" label="サウンド" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="814" label="スペクトラム" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[いまさらかもしれないが、Flash Player 9 より実装された音声のスペクトラム情報が取得できる。前々から気になっていたものの、なかなか手をつけられずにいたのだが、ようやくいろいろと試してみることができた。

とういうことで、<a href="http://1ka2ka.com/pages/labs.html">ラボ</a>に<a href="http://labs180.com/spectrum/">サウンドスペクトラム ＆ 簡易 mp3 プレイヤー</a>というコンテンツを公開してみた。

スペクトラム情報を取得して、AS3でちまちまとサウンドヴィジュアライズとして表現。結構難しいね…（汗

あと忘れないうちにサウンドスペクトラムで参考にしたサイトをメモ。

<ul>
<li><a class="ex" href="http://theflashblog.com/?p=197">The Flash Blog ? AS3 Sound Spectrum Contest Results!!</a></li>
<li><a class="ex" href="http://theflashblog.com/?p=181#">The Flash Blog ? Flash 9 Sound Spectrum!</a></li>
<li><a class="ex" href="http://lab.andre-michelle.com/soundspectrum">aM laboratory</a></li>
</ul>

スペクトラム系ではないのだけども、下記のサイトでサウンドを扱う時に便利なフレームワークを公開しているので、こちらも合わせてご紹介。実際に利用させてもらっています。

<ul>
<li><a class="ex" href="http://feb19.jp/blog/archives/000130.php">feb19.jp blog - AS3で音のボリュームやパンを操作する</a></li>
</ul>

音声やスペクトラムを扱うのはいろいろと面倒だけども、音と同期して表現できる手法という点では面白味があるねー。]]>
      
   </content>
</entry>
<entry>
   <title>出遅れるな！Flash Lite入門 全5回が公開</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200811/01_133407.html" />
   <id>tag:1ka2ka.com,2008://14.1721</id>
   
   <published>2008-11-01T04:34:07Z</published>
   <updated>2008-11-01T04:30:11Z</updated>
   
   <summary>先日のエントリーでも報告したシンクイットでの原稿執筆ですが、全5回が無事に公開された！ 出遅れるな！Flash Lite入門 第1回：Flash Liteの基本を学ぼう！ 第2回：Flash Lite...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="4000-Flash Lite 1.0 / 1.1" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="810" label="Flash Lite" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="484" label="公開" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="775" label="執筆" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[先日のエントリーでも報告した<a href="http://www.thinkit.co.jp/">シンクイット</a>での原稿執筆ですが、全5回が無事に公開された！

<dl>
<dt><a class="ex" href="http://www.thinkit.co.jp/article/144/">出遅れるな！Flash Lite入門</a></dt>
<dd><a class="ex" href="http://www.thinkit.co.jp/article/144/1/">第1回：Flash Liteの基本を学ぼう！</a></dd>
<dd><a class="ex" href="http://www.thinkit.co.jp/article/144/2/">第2回：Flash Lite 1.1の基本的なスクリプト制御</a></dd>
<dd><a class="ex" href="http://www.thinkit.co.jp/article/144/3/">第3回：時計待ち受けを作ろう！</a></dd>
<dd><a class="ex" href="http://www.thinkit.co.jp/article/144/4/">第4回：Flash Liteでゲームを作ろう！</a></dd>
<dd><a class="ex" href="http://www.thinkit.co.jp/article/144/5/">第5回：Flash Liteのまとめと今後</a></dd>
</dl>

Flash Lite 1.1 については実際にゲームや待ち受けなどをいくつか制作していたので、おおまかには把握していたが、今回の執筆にあたって細かい部分の仕様や注意点などを調べたりして書いていたので、逆に勉強になることも多かった。

そんなこんなで Flash Lite の熱が少し高まってか、今、Flash Lite 3.0 の仕様や機能などもいろいろ実験したり試していたりする。

上記については、またこのブログでも掲載していくと思う。お楽しみに！？]]>
      
   </content>
</entry>
<entry>
   <title>過去の産物を Flash Lite 3.0 へ移植中</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200810/24_091333.html" />
   <id>tag:1ka2ka.com,2008://14.1720</id>
   
   <published>2008-10-24T00:13:33Z</published>
   <updated>2008-10-24T00:12:51Z</updated>
   
   <summary>時間ある時にちょこちょこと昔作った Flash ゲームコンテンツを Flash Lite 3.0 に移植中。ちなみに北海道限定の某コンテストに応募する予定でもある。 Flash Lite 3.0 は、...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="5000-Flash Lite 3.0" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="812" label="Action Script" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="810" label="Flash Lite" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="376" label="携帯" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      時間ある時にちょこちょこと昔作った Flash ゲームコンテンツを Flash Lite 3.0 に移植中。ちなみに北海道限定の某コンテストに応募する予定でもある。

Flash Lite 3.0 は、NTT docomo の 905・705 シリーズ以上と SoftBank の一部機種のみ。
※2008/10/24現在

ただ、Flash Lite 3.0 って言っても別に大した事が出来ないのね…＿|￣|○
FLV が利用可能なくせに NTT docomo の仕様では FLV の再生がサポートされていないとのこと。SharedObject もかなりイマイチな感じ。ふーむ…。

まぁでも SWF ファイルを圧縮して書き出せたり XML データが読み込めるのはありがたい。しかも何より Action Script 2.0 でスクリプトを記述できるので超ラク！ルネッサンース Ｊ◎-◎しΨ☆Ψ(´┏∀┓｀ )

昔作ったゲームコンテンツもほとんどそのまま Flash Lite 3.0 で書き出し可能。ただ、携帯の低いスペック能力をカバーするのにスクリプトの処理の最適化やアニメーション部分での最適化作業が必要な感じ。

完成したらコンテスト応募と同時に、携帯のゲームサイトに得点ランキング機能を付けて公開する予定。

Flash Lite で FLV や 携帯のカメラとか制御できると面白そうなんだが…。まだまだ先の話になってくるのかね…。
      
   </content>
</entry>
<entry>
   <title>Mashup Award 4 結果発表</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200810/23_125317.html" />
   <id>tag:1ka2ka.com,2008://14.1719</id>
   
   <published>2008-10-23T03:53:17Z</published>
   <updated>2008-10-23T03:49:48Z</updated>
   
   <summary>マッシュアップコンテンツのコンテスト、Mashup Award 4 の結果発表されたようだ。結果ページはこちら。 実はこのコンテストに2点ほど作品応募していたりするのだが、もちろん、受賞には至らなかっ...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="2500-イベント・セミナー" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="383" label="コンテスト" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="374" label="企画" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="310" label="結果" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[マッシュアップコンテンツのコンテスト、<a class="ex" href="http://mashupaward.jp/">Mashup Award 4</a> の結果発表されたようだ。<a class="ex" href="http://mashupaward.jp/winner/">結果ページはこちら</a>。

実はこのコンテストに2点ほど作品応募していたりするのだが、もちろん、受賞には至らなかった…orz
まぁ、ホントに勉強がてら簡単なサンプル程度のものをダメもとで応募していたんで当たり前の結果なんだけども。

結果発表を見てみると、やっぱり皆さんいろいろ面白い企画をしているんだなーと感心。いろいろと勉強になる。

受賞作品にブログの内容から「<a class="ex" href="http://blog-emotion.com/emo/">emo</a>」というブログの顔を生成するというブログパーツがあったんで試しにこのブログにも設置してみた。なかなか面白い。※もしかするとそのうち消してしまうかもしれないけど。

いやーなんか面白いコンテンツを作ってみたくなってきたなー。

Mashup Award も定期的に開催しているようなんで、来年（？）までには何か面白い企画をあたためて今度は受賞狙いで応募してみたいものだ。]]>
      
   </content>
</entry>
<entry>
   <title>コピペ支援ツールでようやく理想のモノを発見！</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200810/22_123527.html" />
   <id>tag:1ka2ka.com,2008://14.1718</id>
   
   <published>2008-10-22T03:35:27Z</published>
   <updated>2008-10-22T11:57:43Z</updated>
   
   <summary> Flash でもそうだし web 系でも何でもコピー＆ペーストは頻度の高い操作方法となるはず。 前々からクリップボード系のフリーツールなんかを試していたりしていたのだけど、あまりしっくりくるようなモ...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="5500-ツール" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="807" label="コピペ" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="808" label="支援" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[<p class="img_R"><img src="/uploadfile/081022/copipe.gif" alt="" width="269" height="160"></p>

Flash でもそうだし web 系でも何でもコピー＆ペーストは頻度の高い操作方法となるはず。

前々からクリップボード系のフリーツールなんかを試していたりしていたのだけど、あまりしっくりくるようなモノが発見できずじまいだった…。

思い出すたびにちょこちょこと調べていたら、最近、ようやく理想のツールを発見できた。

<a class="ex" href="http://www.vector.co.jp/soft/win95/util/se092164.html">HotClip</a>

クリップボードの履歴などを残せるツールはいろいろあるんだけども、結局、ミニパネルなどを使うケースが多いんで、画面を行ったり来たりとメリットが感じられなかったのだが、この「HotClip」に関しては、ほとんどの操作をキーボードから行えるという特徴がある。

例えば、「Ctrl + Shift + V」などとショートカットを設定してクリップボードの履歴一覧をマウス位置に表示させることができる。それで、その一覧から文字を選ぶと同時に文字がペーストされる。

履歴の順番なども割と細かく設定可能。

個人的にコピペはかなり多用する操作なんで、これでさらなる効率UPが望めそう。

コピペマスター。

<h2>081022追記</h2>

<a class="ex" href="http://www.vector.co.jp/soft/win95/util/se075069.html">CLCL</a>

こっちのソフト同様にホットキーの割り当てなどができるようだ。しかもテキストだけではなくビットマップなども履歴を残してくれるようだ。高機能。

うーん。どちらを使用するか迷うところ。いろいろ試してみるか。]]>
      
   </content>
</entry>
<entry>
   <title>Flash の操作系の効率化 拡張機能「mxp」や「jsfl」など</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200810/17_202856.html" />
   <id>tag:1ka2ka.com,2008://14.1716</id>
   
   <published>2008-10-17T11:28:56Z</published>
   <updated>2008-10-17T11:22:30Z</updated>
   
   <summary>ここ最近 Flash の案件を進めていたりするんだけども、今回はほぼ完全タイムライン仕様。つまりスクリプトをガシガシと組むようなコンテンツではない…。 本格的にタイムラインでアニメーションを付けるなん...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="2000-Flash" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="805" label="効率" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="804" label="操作" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[ここ最近 Flash の案件を進めていたりするんだけども、今回はほぼ完全タイムライン仕様。つまりスクリプトをガシガシと組むようなコンテンツではない…。

本格的にタイムラインでアニメーションを付けるなんて何年振りだろうか…（汗

もちろん、ちょこちょこっとしたものであればタイムラインをいじったりするけどもメインで作業するのは久しぶり。

グラフィックシンボルを配置して、シングルフレームでフレームの表示を変えたりなんだり、あまりにも久しぶりすぎて逆にちょっとテンション上がってしまったり（笑

しかし、それは最初だけで、作業を進めていくにしたがって、なんか、すごく、手がつりそう…。

で、それでも作業を進める必要あるんだけども、やっぱりスクリプトの方が楽だなと思って、何か効率をよくする方法は無いものだろうかと思案＆調査。

見つけた！

<a class="ex" href="http://level0.kayac.com/2008/01/flash_2.php">今さらながら、便利なFlash拡張機能を入れてみた。｜_level0.KAYAC</a>
<a class="ex" href="http://www.link-log.net/archives/2007/08/flashmxpjsfl.html">Flashの作業を楽にする拡張機能mxpとかjsflとか｜link-log powered by fullsizeimage.inc</a>
<a class="ex" href="http://www.yama-ko.net/blog/?p=54">Flash操作を17倍豊かにする90のショートカット - Mattari Blog</a>
<a class="ex" href="http://www.yama-ko.net/blog/?p=31">jsflのすすめ - Mattari Blog</a>
<a class="ex" href="http://psyark.jp/?entry=20050617161854">psyark.jp - AnimationPencil</a>
<a class="ex" href="http://violentcoding.com/blog/2008/05/21/archives/125">[Flash]Flash CS3 変形基準点用の拡張機能を作った | blog ViolentCoding</a>
<a class="ex" href="http://52sec.org/wordpress/?p=19">52secNote &raquo; 機能拡張mxp</a>

拡張機能をインストールしたり、ショートカットをカスタマイズ、良く使う操作をコマンド化してしまうなどなど。

機能拡張はいくつかインストールしているものがあったけども、特に jsfl を利用してコマンド化するのは全然知らなかった。これはかなり便利。フレームとか決まった数をまとめて挿入したい場面とかあったりするけど、こんなに簡単に実現できてしまうなんて…。しかもショートカットを割り当てられる。

Flash はまだまだ奥深い。。。

しかし、これで、だいぶ効率よく作業できるようになった。

スクリプトの勉強も良いけども、きちんと操作基本を抑えておくのも大事だね（汗]]>
      
   </content>
</entry>
<entry>
   <title>Adobe Flash デベロッパーセンター に掲載</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200810/09_205532.html" />
   <id>tag:1ka2ka.com,2008://14.1711</id>
   
   <published>2008-10-09T11:55:32Z</published>
   <updated>2008-10-23T12:12:10Z</updated>
   
   <summary>先日に行われたイベントで発表した携帯連動 Flash 抽選コンテンツですが、その当日、イベント会場にアドビのマーケティングマネージャーの方スピーカーとして参加していたのですが、イベント終了後に僕が発表...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="2000-Flash" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="794" label="Adobe" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="380" label="Flash" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="527" label="掲載" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[先日に行われたイベントで発表した<a href="http://labs180.com/lot/">携帯連動 Flash 抽選コンテンツ</a>ですが、その当日、イベント会場にアドビのマーケティングマネージャーの方スピーカーとして参加していたのですが、イベント終了後に僕が発表したFlash抽選会コンテンツを「Adobe デベロッパーセンターに掲載しませんか？」との有り難いお話を受けていたのですよ。実は。フフフ。

もちろん、誰もが知っているような Adobe サイトに掲載されることはとても嬉しいことなんだけども、また原稿を執筆しなければと少しプレッシャーを感じていたりもした。

しかし、Adobe にきちんと専属のライターさんがいるとのことでほっと一安心。ただ、元となる情報は提供しないことには話が進まないので原文となるような文章を執筆。その後ライターさんと細かくやり取りをしつつ、結果、分かりやすく読みやすい内容にまとめてもらえた。ホント感謝感謝ですねー。

<a class="ex" href="http://www.adobe.com/jp/devnet/flash/articles/lot777.html">Adobe - デベロッパーセンター : Flash＋Flash Liteを使った参加型抽選会システム「lot777.com」</a>

で、掲載されたページがこれ。ホントにアップされている（嬉）！

セミナーの時もそうだったんだけども、今回のコンテンツで何が大変って、このコンテンツ自体の構成や仕組みを説明するのがとても大変だった…。やっていることはそんなに難しいことではないんだけども（僕自身そんなに難しいことが出来ない…汗）、通常のコンテンツと違って一連の流れが無いので説明が難しいんだよね…（汗

でも、こんな良い話を貰えたおかげで構成のフロー図などをまとめられたので良かったかな。

しかし、これで満足することなく、また何か面白いコンテンツを作っていきたいものだ。なかなかまとまった時間が取れないけども、ちょこちょこと少しずつ…。]]>
      
   </content>
</entry>
<entry>
   <title>C-team にバナー投稿したら入賞してボーナスポイント獲得</title>
   <link rel="alternate" type="text/html" href="http://1ka2ka.com/archives/200810/02_000708.html" />
   <id>tag:1ka2ka.com,2008://14.1700</id>
   
   <published>2008-10-01T15:07:08Z</published>
   <updated>2008-10-09T02:20:30Z</updated>
   
   <summary>以前にもチラとエントリしていたのだけども、バナー投稿サイトのC-team。 暇な時にちまちまとバナー投稿してたんだけども、ふと気づけばクリックランキングで4位に入賞していた。 ボーナスポイントを 10...</summary>
   <author>
      <name>ヒカル</name>
      
   </author>
         <category term="1500-Web" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="750" label="バナー" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="776" label="入賞" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://1ka2ka.com/">
      <![CDATA[以前にもチラとエントリしていたのだけども、バナー投稿サイトの<a class="ex" href="http://c-team.jp/">C-team</a>。

暇な時にちまちまとバナー投稿してたんだけども、ふと気づけばクリックランキングで4位に入賞していた。

ボーナスポイントを 10,000pt ゲット（1万円）！

思わぬところでの収入は嬉しいものだ。

でも確か当初は、1～5位までがボーナスポイント獲得だったのだけども、今ページを見てみるとボーナスポイントの付与は 1～3位になってた。変更されたのだろうか…？

まぁバナーを投稿するだけではなく、クリック率やインプレッション数などもランキングで表示されるので、どういうバナーがクリックされやすいかなどの参考としても活用できるような気がする。]]>
      
   </content>
</entry>

</feed>
