我在Flash IDE中设计了一个用户界面,为ActionScript导出了很多对象,并使用外部文档类.as文件对应用程序进行编程。
在Flash IDE中,我不希望任何滑块或textField具有辅助功能选项。我打开辅助功能面板(窗口>其他面板>辅助功能),并选择阶段我取消选中“使电影可访问”。保存。编译。运行时错误:
~/myCustomClass.as, Line 4 1180: Call to a possibly undefined method AccessibilityProperties.
第4行是一个简单的导入:
import flash.display.Sprite;
我该如何解决这个问题?
更新:
将以下导入添加到我的.as中会删除运行时错误:
import flash.accessibility.AccessibilityProperties;
import flash.accessibility.Accessibility;
但是,应用程序仍允许使用Tab键。我怎样才能完全关闭辅助功能?
我试过了:
Sprite.prototype.tabEnabled = false;
但这不起作用。
答案 0 :(得分:1)
舞台不起作用,但您应该能够使用root。 在Flash IDE中,在主时间轴上添加以下内容:
var main:MovieClip = this.root as MovieClip(); main.tabEnabled = false; main.tabChildren = false;
答案 1 :(得分:0)
尝试:
stage.tabEnabled = false;
stage.tabChildren = false;
因为每个显示对象都是舞台的子节点,所以它应该全局停止。
更新:
因为您无法在舞台上设置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;
}
}