サイトトップ

Director Flash 書籍 業務内容 プロフィール

Macromedia Flash非公式テクニカルノート

Mouse.registerCursor()/Mouse.unregisterCursor()メソッド

ID: FN1102003 Platform: All Version: CS5/ActionScript 3.0 Runtime: Flash Player 10.2/AIR 2.6

Mouseクラス
パッケージ flash.ui
継承 Mouse → Object
registerCursor()メソッド
文法 public static function registerCursor(name:String, cursor:MouseCursorData):void
概要 [静的] ネイティブカーソルを、指定された名前とMouseCursorDataオブジェクトで登録する。
引数

name:String − ネイティブカーソルに設定する名前の文字列。

cursor:MouseCursorData − マウスアイコンのビットマップやホットスポットが定められたMouseCursorDataオブジェクト。

戻り値 なし。
unregisterCursor()メソッド
文法 public static function unregisterCursor(name:String):void
概要 [静的] 指定された名前のネイティブカーソルを登録から削除する。
引数

name:String − ネイティブカーソルに設定された名前の文字列。

戻り値 なし。

説明
ネイティブカーソルを設定するには、以下のような手順を踏みます。MouseCursorDataインスタンスの生成と設定については、「MouseCursorDataクラス」を併せてご参照ください。なお、MouseCursorDataインスタンスは、Mouse.registerCursor()メソッドに渡す前に設定を済ませておく必要があります。

  1. MouseCursorDataインスタンスの生成
  2. MouseCursorDataインスタンスの設定
    1. MouseCursorData.dataプロパティの設定(必須)
      • 設定するVectorオブジェクトには少なくともひとつのBitmapDataエレメントを納める
    2. MouseCursorData.hotSpotプロパティの設定(オプション)
    3. MouseCursorData.frameRateプロパティの設定(オプション)
  3. Mouseクラスへのネイティブカーソル設定
    1. Mouse.registerCursor()メソッドで名前とMouseCursorDataオブジェクトを設定
    2. Mouse.cursorプロパティにネイティブカーソルの名前を設定


つぎのスクリプトは、BitmapDataインスタンスをネイティブカーソル(名前"myCursor")として設定します。

var cursorData:MouseCursorData = new MouseCursorData();
var bitmapDatas:Vector.<BitmapData> = new Vector.<BitmapData>();
cursorData.data = bitmapDatas;
cursorData.hotSpot = new Point(10, 5);
bitmapDatas[0] = myBitmapData;
Mouse.registerCursor("myCursor", cursorData);
Mouse.cursor = "myCursor";

なお、ネイティブカーソルに設定するBitmapDataインスタンス(myBitmapData)は、後出「参考」のドキュメントはFlex SDKを用いて、つぎのようなかたちで生成しています。

[Embed (source="/assets/pen_icon.png" )]
public static const Icon:Class;
var myBitmap:Bitmap = new Icon();
var myBitmapData:BitmapData: = myBitmap.bitmapData;

Flashアプリケーション(オーサリングツール)の場合には、つぎのように[ライブラリ]のビットマップにクラスを設定してつくることになるでしょう(図001)。ただし、本稿執筆時現在のFlash Professional CS5は、Flash Player 10.2に実装されたクラスの書出しには対応していません。

var myBitmapData:BitmapData = new Icon();

図001■[ライブラリ]のビットマップにクラスを設定
図001

ネイティブカーソルのサンプルSWFは、下記「参考」のドキュメントに掲げた「Working with native mouse cursors in Flash Player 10.2」の「Native cursor demo」および「Working with Native Custom Cursors in Flash」にリンクされた「Native Bitmap-based Cursor Demo」で確かめられます(Flash Player 10.2のインストールが必要)。

参考
akihiro kamijo「MouseCursorDataクラスとネイティブマウスカーソル(Flash Player 10.2)
[ActionScript 3.0 Reference for the Adobe Flash Platform] > [Mouse](*ページの[Package and class filters]で「AIR 2.5 and earlier, Flash Player 10.2 and earlier」を選択)
Adobe Developer Connection「Working with native mouse cursors in Flash Player 10.2
Adobe Flash Platform Blog「Working with Native Custom Cursors in Flash

_____

作成者: 野中文雄
作成日: 2011年2月9日


Copyright © 2001-2011 Fumio Nonaka.  All rights reserved.