1

我正在使用 Flash CS6,并且正在尝试开发一个更复杂的脚本,但我遇到了以下问题。以下代码未按预期运行:

var dom = fl.getDocumentDOM();
dom.selectNone();
fl.trace(dom.selected.symbolType);

我预计会出现错误,告诉我选择没有属性 - 因为我已经取消选择所有,dom.selected 应该是空的。相反,我得到了这个跟踪输出:

graphic

我的文档有一个包含图形、位图和影片剪辑的库。当我第一次运行这个脚本时,我在舞台上选择了一个图形。在用户界面中,我尝试了:

  • 取消选择所有
  • 选择一组不同类型和不同图层上的元素
  • 选择单个影片剪辑
  • 删除场景中的所有内容,包括所有库项目、帧和图层

无论我做什么,我都会得到输出,告诉我我选择了一个图形。

经过进一步调查,我重新加载了文件。这次我运行脚本时没有选择任何内容。我得到了我预期的错误!所以我编辑了脚本以摆脱取消选择,所以我可以看到有关我当前选择的信息:

var dom = fl.getDocumentDOM();
//dom.selectNone();
fl.trace(dom.selected.symbolType);

但是,然后我选择了一些对象并继续收到“dom.selection is empty”错误,就好像我仍然没有选择任何内容一样。所以我退出 Flash 并再次打开文件。

现在无论我选择了什么,我都会收到选择为空的错误。所以,我要么遗漏了一些重要的东西,要么这根本不是这个对象应该工作的方式。如何按预期访问/设置当前选择?

4

1 回答 1

0

你有没有尝试过:

var selection = fl.getDocumentDOM().selection[0];
于 2013-12-30T10:55:30.093 回答