使用 ELF 命令创建的每个 UI 元素都具有一个名称。名称是必需的,以便在创建元素后引用该元素。例如,查询某个控制的当前值或状态时需要该控制的名称。使用 ELF 命令创建控制时,名称是命令中的最后一个参数。如果没有提供名称,则会为控制生成唯一的名称。
所有 ELF 元素(窗口除外)都具有其所属的父对象。为了避免与现有 UI 元素出现命名冲突,只要名称在父对象范围内是唯一的即可。例如,在用于创建菜单的脚本中(如上所示),每个菜单都具有一个名为“menuItem1”的菜单项。若要区分具有相同名称的元素,需要使用元素的完整层次路径名称。对于这些菜单项,其完整名称可能为“ExampleWindow3|TestFileMenu|menuItem1”、“ExampleWindow3|TestEditMenu|menuItem1”和“ExampleWindow3|TestOptionsMenu|menuItem1”。在脚本 3 的窗口仍然可见的情况下,每次执行以下其中一个命令查询各自的标签。
menuItem -query -label ExampleWindow3|TestFileMenu|menuItem1; menuItem -query -label ExampleWindow3|TestEditMenu|menuItem1; menuItem -query -label ExampleWindow3|TestOptionsMenu|menuItem1;
创建 UI 元素的 ELF 命令都会返回该元素的完整名称。使用元素的完整名称可保证所引用的是正确的元素。如果使用了元素的短名称(例如,“menuItem1”),则在存在多个具有相同名称元素的情况下,可能引用的不是所需的元素。使用短名称时,ELF 首先会在当前的默认父对象下查找匹配项。如果找到了多个匹配项,则返回第一个匹配项。