feb19.jp

Nobuhiro Takahashi
Designer / Engineer

デフォルトのコンテキスト(右クリック)メニューを非表示にする

デフォルトのコンテキスト(右クリック)メニューを非表示にする

なにもやらないと「拡大」や「縮小」、「100%表示」などの表示が出てしまうわけですが、それを非表示にする方法のメモ。

//AS2
Stage.showMenu = false;
	
//AS3
stage.showDefaultContextMenu = false;

でもいいのですが、これだと、WindowsのスタンドアロンのFlash Playerを起動したときに、ウィンドウ上のメニューも消えてしまうので、そのメニュー分だけ表示エリアが広がってしまい、ダサイ感じになってしまいます。swfを直で見ようとする上の方に「何これ」って言われてしまう訳ですね。

というわけで、そのWindowsのウィンドウメニューを消さずに、右クリックメニューのデフォルト項目を消す方法。

//AS2
var context = new ContextMenu();
context.hideBuiltInItems();
_root.menu = context;
	
//AS3
import flash.ui.ContextMenu;
var context = new ContextMenu();
context.hideBuiltInItems();
MovieClip(this.root).contextMenu = context;

メインのswfの一番最初のフレームに書いておけばいいと思います。

ContextMenuは、コンテキストメニュー(右クリックメニュー)を操作するクラス。

コンテキストメニューに何か機能を追加したいときは、このクラスのメソッドやプロパティを操作して実現します。海外のプロダクションがよくやってますよね。

個人的には簡単なデバッグとかするときにコンテキストメニューを使っています。「BGMを3番のものにする」とか、「マウスオーバーのモーションをBパターンにする」とか、「モーションのデバッグウィンドウを立ち上げる」とか、結構便利です。

Tweet Share Bookmark

Navigation

prev: AS3のEvent.REMOVEDがなかなか便利なので使用方法と注意点
next: ActionScriptで極座標を用いて星を描く

Recently Entries