在 Flash Professional CS4 中,当我使用鼠标/键盘输入处理程序名称(例如 onMouseDown、onKeyUp 等)时,我会收到“迁移问题”警告,即使我已为它们添加了事件侦听器。这些名称对于函数来说是完全合法的,但由于这些名称在 ActionScript 2.0 中自动触发,我们现在(尽管是明智的)警告它们在 AS3 中不再自动使用。
我理解警告的目的,但它们对我没有用。我想抑制这些警告,但是without抑制任何其他警告,我通常会这样做do发现有用的。
例如,当我使用这样的代码时:
/** @constructor */
public function MyClass() {
addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
}
protected function onMouseDown(e:MouseEvent):void {
我收到这样一个烦人的警告:
Warning: 1090: Migration issue: The onMouseDown event handler is not triggered automatically by Flash Player at run time in ActionScript 3.0. You must first register this handler for the event using addEventListener ( 'mouseDown', callback_handler).
有一些 Flex 编译器 (mxmlc) 标志(和 Flash Pro 设置)可以抑制动作脚本警告,或者all警告,但我不想要这样。这太笼统了。
理想情况下我可以抑制特定的错误/警告编号(警告#1090)。
Edit:我发现了更多“高级”编译器标志mxmlc -help advanced
,看起来很有希望。具体来说,以下似乎是可能的候选人:
warn-deprecated-event-handler-error
warn-deprecated-function-error
warn-deprecated-property-error
我如何让 Flash 使用这些?
Edit 2:我在Flash User Data目录中找到了一个flex-info.xml样式的文档。
[userdatafolder]/Adobe/Flash CS4/en/Configuration/ActionScript 3.0/FlexInfo.xml
然而,这个文件包含一个令人失望的评论:<!-- Flash does not support most flex-config options. -->
,即使重新启动闪存后,似乎也没有响应我的指令。
这越来越令人难过了。
Edit 3: 发现一个问题”错误的、烦人的“迁移问题”警告 https://bugs.adobe.com/jira/browse/SDK-13911Adobe bug tracker 上的“。已确认 Flex SDK 的修复,但没有提及 Flash...