flex – 如何抑制Flash迁移警告(1090)

在Flash Professional CS4中,即使我为其添加了事件监听器,当我使用鼠标/键盘输入处理程序名称(如onMouseDown,onKeyUp等)时,我会收到“迁移问题”警告.这些名称对于函数来说是完全合法的,但是由于这些在ActionScript 2.0中自动启用,我们现在(尽管明智地)警告说它们在AS3中的使用不再自动.

我明白警告的目的,但对我来说并不有用.我想抑制这些警告,但不会抑制任何其他警告,我通常认为有用.

例如,当我使用这样的代码

/** @constructor */
public function MyClass() {
  addEventListener(MouseEvent.MOUSE_DOWN,onMouseDown);
}

protected function onMouseDown(e:MouseEvent):void {

我得到一个令人讨厌的警告:

警告:1090:迁移问题:Flash Player在运行时不会在ActionScript 3.0中自动触发onMouseDown事件处理程序.您必须首先使用addEventListener(‘mouseDown’,callback_handler)注册该事件处理程序.

有flex编辑器(mxmlc)标志(和Flash Pro设置),可以抑制actionscript警告或所有警告,但我不希望.这太笼统了

理想情况下,我可以抑制一个特定的错误/警告号码(警告#1090).

编辑:我发现更多的“高级”编译器标志与mxmlc -help高级,这看起来很有希望.具体来说,以下似乎是可能的候选人:
警告不推荐使用的事件处理程序错误
警告不推荐使用的功能错误
警告弃用的属性错误

如何让Flash使用这些?

编辑2:我在Flash User Data目录中找到了一个flex-info.xml样式的文档.
[userdatafolder] / Adob​​e / Flash CS4 / en / Configuration / ActionScript 3.0 / FlexInfo.xml
但是,该文件包含令人失望的评论:<! - Flash不支持大多数flex-config选项. - >,甚至在重新启动flash之后似乎也没有回应我的指令.
这很伤心

编辑3:在Adobe bug跟踪器上发现问题“Erroneous,annoying “Migration issue” warnings”.对Flex SDK进行了修复,但没有提到Flash …

解决方法

您可以在$Flash / $LOCALE / Configuration / Actionscript 3.0 / EnabledWarnings.xml中编辑EnabledWarnings.xml,其中$Flash是应用程序/程序文件文件夹中Flash的路径,$LOCALE是您的语言.

例如

/ Applications / Adob​​e Flash CS4 / en / Configuration / ActionScript 3.0 / EnabledWarnings.xml

您将需要编辑第29行,将enabled属性设置为false,警告标识为1090:

<warning id="1090" enabled="false"  label="kWarning_DepricatedEventHandlerError">EventHandler was not added as a listener.</warning>

快速旁注:

“Flash Builder(CS4)”是一个混乱的术语.在Flex Builder 3之后,Flex Builder已经重命名为Flash Builder,没有Flash Builder CS4.常规的Flash IDE被称为Flash Professional / Flash Professional CS4,这是为了避免在类似名称的产品之间产生混淆:Flash Catalyst,Flash Builder(Flex Builder),Flash Professional.显然,这并不总是很好:)

相关文章

一:display:flex布局display:flex是一种布局方式。它即可以...
1. flex设置元素垂直居中对齐在之前的一篇文章中记载过如何...
移动端开发知识点pc端软件和移动端apppc端软件是什么,有哪些...
最近挺忙的,准备考试,还有其他的事,没时间研究东西,快周...
display:flex;把容器设置为弹性盒模型(设置为弹性盒模型之后...
我在网页上运行了一个Flex应用程序,我想使用Command←组合键...