aaa*_*dan 10 apache-flex flash actionscript-3 suppress-warnings mxmlc
在Flash Professional CS4中,当我使用鼠标/键盘输入处理程序名称(如onMouseDown,onKeyUp等)时,即使我为它们添加了事件侦听器,也会出现"迁移问题"警告.这些名称对于函数来说是完全合法的,但由于它们是在ActionScript 2.0中自动触发的,因此我们现在(尽管明智地)警告它们在AS3中的使用不再是自动的.
我理解警告的目的,但它们对我没用.我想抑制这些警告,但不要压制任何其他警告,我通常会发现这些警告很有用.
例如,当我使用这样的代码时:
/** @constructor */
public function MyClass() {
addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
}
protected function onMouseDown(e:MouseEvent):void {
Run Code Online (Sandbox Code Playgroud)
我得到一个像这样恼人的警告:
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设置)可以抑制动作脚本警告或所有警告,但我不希望这样.这太笼统了.
理想情况下,我可以抑制特定的错误/警告号码(警告#1090).
编辑:我发现了更多"高级"编译器标志mxmlc -help advanced,看起来很有希望.具体来说,以下似乎是可能的候选人:
warn-deprecated-event-handler-error
warn-deprecated-function-error
warn-deprecated-property-error
如何让Flash使用这些?
编辑2:我在Flash用户数据目录中找到了一个flex-info.xml样式文档.
[userdatafolder]/Adobe/Flash CS4/en/Configuration/ActionScript 3.0/FlexInfo.xml
但是,此文件包含令人失望的注释:<!-- Flash does not support most flex-config options. -->,即使重新启动Flash后,似乎也没有响应我的指令.
这让人难过.
编辑3:在Adobe bug跟踪器上发现问题" 错误,恼人"的迁移问题"警告 ".Flex SDK已确认修复,但未提及Flash ...
Geo*_*nza 13
你可以,如果你编辑EnabledWarnings.xml在$闪存/ $ LOCALE /配置/ ActionScript 3.0中/ EnabledWarnings.xml,其中$ Flash是你的应用程序中对Flash的路径/ Program Files文件夹和$ locale是您的语言.
例如
/Applications/Adobe Flash CS4/en/Configuration/ActionScript 3.0/EnabledWarnings.xml
您将需要编辑29行,设置启用属性,以虚假的警告 ID为1090:
<warning id="1090" enabled="false" label="kWarning_DepricatedEventHandlerError">EventHandler was not added as a listener.</warning>
Run Code Online (Sandbox Code Playgroud)
快速旁注:
"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.显然它并不总是那么好:)