- 2009-05-22 (金)
- AIR 1.5
今回は軽めの内容。
AIR でウインドウスタイルを「カスタムスクロール(透明)」に設定すると、背景を透過させることができるので、自由なデザインの形でアプリケーションを生成できるのが魅力。

ただ、そうなるとウインドウタイトルなども表示されなくなるため、ドラッグでウインドウの移動を行うことができない。
その辺の処理は自分で行う必要がありそうだ。
ドラッグ処理は簡単。ベースとなるオブジェクトにインスタンス名を設定してマウスイベントを追加するだけ。

下記のようなコードを記述すれば動作する。
package
{
import flash.display.*;
import flash.events.*;
import flash.geom.*;
import flash.net.*;
import flash.filesystem.*;
import flash.desktop.*;
public class Main extends Sprite
{
var mainWindow:NativeWindow = stage.nativeWindow;
/*============================================================
コンストラクタ
============================================================*/
public function Main()
{
base.addEventListener(MouseEvent.MOUSE_DOWN, baseClickHandler);
}
/*============================================================
ドラッグ
============================================================*/
function baseClickHandler(event:Event) :void
{
mainWindow.startMove();
}
}
}
MouseEventは「MOUSE_DOWN」で指定する。
ちなみにマウスを離すと自動的にドラッグ処理が停止されるっぽいので、停止の時の処理は記述しなくてもOK。
するとこんな感じでドラッグをすることができる。

ただ、アルファが完全に0%の場合、ドラッグ処理は無効になってしまうようだ。上記のサンプルでは右下の部分をアルファ 0% にしているのだが、ウインドウをドラッグすることができなかった。
09.05.22 追記
イベントを追加する際、わざわざインスタンス名を指定しなくても、stage でもOKのようだ。
stage.addEventListener(MouseEvent.MOUSE_DOWN, baseClickHandler);
この記事をブックマークしておく
コメント:0
トラックバック:0
- この記事のトラックバックURL
- http://god.xsrv.jp/__mt/mt-tb.cgi/1439
- トラックバックを受ける記事
- AIR アプリでカスタムクロール(透明)の時にウインドウ(オブジェクト)をドラッグさせる from 1ka2ka.com Flash & Action Script