Flash Professional CS6 のステージにイベント リスナーを追加すると、次のようになります。
stage.addEventListener(MouseEvent.RIGHT_MOUSE_DOWN, rightMouseHandler);
または定数なし:
stage.addEventListener("rightMouseDown", rightMouseHandler);
マウスの右ボタンは正常に動作します。これを Flash Player 11.7 (flashplayer_11_sa_debug.exe)、Firefox、Chrome、Internet Explorer でテストしました。
しかし、Fash Builder 4.6 - Flex 4.6 アプリケーション タイプ Web でこれを記述すると、次のようになります。
stage.addEventListener("rightMouseDown", rightMouseHandler);
マウスの右ボタンが効かない。
.
備考
AIR アプリケーション タイプと同じ Flex プロジェクトを実行すると、マウスの右ボタンが正しく機能します。
Flash Player で動作しない理由について何か考えはありますか?
^^^編集:^^^ リスナーを追加する方法:
フラッシュ ビルダー 4.6:
<s:Application applicationComplete="completeHandler()" ...>
<fx:Script>
<![CDATA[
private function completeHandler(): void {
stage.addEventListener("rightMouseDown", rightMouseHandler);
}
public function rightMouseHandler(e :MouseEvent) :void {
var col :String = '#' + uint(Math.random()*0xFFFFFF).toString(16);
setStyle('backgroundColor', col);
trace(col);
}
1 フレームの Flash Professional CS6:
stage.addEventListener("rightMouseDown", rightMouseHandler);
function rightMouseHandler(e :MouseEvent) :void{
var col :uint = uint(Math.random()*0xFFFFFF);
stage.color = col;
trace('#' + col.toString(16));
}