Flash/ActionScript - 关闭辅助功能
我在Flash IDE中设计了一个UI,为ActionScript导出了很多对象,并使用外部文档类.as文件编写应用程序。Flash/ActionScript - 关闭辅助功能
在Flash IDE中,我不希望我的任何滑块或textField具有辅助功能选项。我打开辅助功能面板(窗口>其他面板>辅助功能),并选择舞台,取消选中“制作电影无障碍”。保存。编译。运行时错误:
~/myCustomClass.as, Line 4 1180: Call to a possibly undefined method AccessibilityProperties.
4号线是一个简单的导入:
import flash.display.Sprite;
我怎么能解决这个问题?
UPDATE:
添加以下进口到我的。至于消除了运行时错误:
import flash.accessibility.AccessibilityProperties;
import flash.accessibility.Accessibility;
但是,应用程序仍然允许黏合。我怎样才能完全关闭可访问性?
我已经试过:
Sprite.prototype.tabEnabled = false;
但这并没有工作。
阶段将无法正常工作,但你应该能够用root来做到这一点。 在闪存IDE中,在主时间轴上添加以下内容:
var main:MovieClip = this.root as MovieClip(); main.tabEnabled = false; main.tabChildren = false;
尝试:
stage.tabEnabled = false;
stage.tabChildren = false;
因为每个显示对象是阶段的孩子,应该在全球范围阻止它。
UPDATE:
因为你不能设置在舞台上tabEnabled属性,你可以遍历其上的所有儿童,并将其应用到它们。
for(var:int; i < stage.numChildren; i++) {
var c:DisplayObject = stage.getChildAt(i);
if(c is InteractiveObject) {
InteractiveObject(c).tabEnabled = false;
}
if(c is DisplayObjectContainer) {
DisplayObjectContainer(c).tabChildren = false;
}
}
没有工作。我收到了尝试使用tabEnabled属性设置舞台的运行时错误。它接受tabChildren,但它仍然允许我标签。 – TheDarkIn1978 2010-09-15 06:30:52
你能发布错误吗?我只是做了一个快速测试,它按照我的预期工作,没有错误。 – 2010-09-15 06:35:38
错误:错误#2071:Stage类未实现此属性或方法。在错误$/throwError()在flash.display :: Stage/settabEnabled()。它还在文档中声明,如果在舞台上设置了tabEnabled,则会抛出IllegalOperationError:http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/display/Stage.html – TheDarkIn1978 2010-09-15 06:38:15
谢谢,这工作。我只需要添加this.tabChildren = false;到我的主要文档类。 – TheDarkIn1978 2010-09-15 07:31:38