在OpenLaszlo应用程序中禁用Flash Player默认上下文菜单

时间:2012-09-20 18:45:57

标签: flash contextmenu openlaszlo lzx

使用SWF10 / 11运行时部署OpenLaszlo应用程序时,是否可以完全禁用台式计算机上的Flash Player上下文菜单?

1 个答案:

答案 0 :(得分:3)

这只能从Flash Player 11.2开始。我已经使用基于flex4.6分支的OpenLaszlo的修改版本进行了测试运行,为OpenLaszlo编译器添加了Flash 11.2+支持。使用以下LZX代码,我设法完全删除了默认的Flash Player上下文菜单:

<canvas width="100%" height="800" proxied="false">

    <passthrough when="$as3">
        import flash.events.MouseEvent;
    </passthrough>

    <handler name="oninit">
        if ($as3) {
            Debug.info(MouseEvent.RIGHT_CLICK);
            var sprite = this.getDisplayObject();
            sprite.addEventListener(MouseEvent.RIGHT_CLICK, doSomething);
        }
    </handler>

    <method name="doSomething" args="p">
        Debug.inspect(p);
    </method>

</canvas>

目前我不愿意为OpenLaszlo提供更多代码,因为Laszlo和Critical Path在过去两年一直不尊重社区。我可能会创建一个OpenLaszlo的私有分支,我将在其中添加新功能和错误修复,也许这可以转换为社区维护的版本。

因此,无法将此示例代码用于已发布的版本或OpenLaszlo的高度构建。