1

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

4

1 回答 1

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 贡献更多代码,因为过去 2 年中 Laszlo 和 Critical Path 一直不尊重社区。我可能会创建一个 OpenLaszlo 的私有分支,在其中添加新功能和错误修复,也许这可以变成由社区维护的版本。

因此,无法将此示例代码与 OpenLaszlo 的已发布版本或几乎构建的版本一起使用。

于 2012-09-20T19:27:13.227 回答