EVE Online UI(用户界面)是一个复杂的结构,存在于许多专用对象中,每个对象都是另一个对象的子对象。 这是一个面向树的数据结构。 为了从游戏中获取数据,并进行任何操作或计算,您应该首先获得正确的数据。 为此,创建了 UI 请求语言。 它类似于文件系统中某种文件的路径。
桌面/l_main/大厅/__maincontainer/主/未对接父级
/l_main/大堂Wnd/__maincontainer/main/unockparent
桌面
是一个根UI元素,通常,您可以忽略它并像第二个示例一样编写UI请求。 此 UI 请求等于第一个。
在每个斜杠 /
之后,您应该写下子 UI 元素或搜索运算符的名称。
例如,根 UI 元素的名称为 Desktop
,它具有名称为 l_main
的子元素,它具有子 lobbyWnd
。
搜索运算符
搜索运算符 – 这是斜杠/searchOperatorHere
之后的文本对于深度搜索UI元素,它们可能不同。
算子 | 例子 | 描述 |
---|---|---|
名字 | /l_main | 按特定名称获取子 UI 元素(区分大小写) |
[index] | /[0] | 按索引获取子 UI 元素 |
"文本" | /"库存" | 按特定文本值获取子 UI 元素(区分大小写) |
#substring# | /#main# | 通过 Name 属性中的子字符串获取子 UI 元素 |
@substring@ | /@undock@ | 通过 Text 属性中的子字符串获取子 UI 元素 |
^子字符串^ | /^技术 II^ | 通过 Hint 属性中的子字符串获取子 UI 元素 |
$substring$ | /$Scroll$ | 通过 Type 属性中的子字符串获取子 UI 元素(区分大小写) |
名称=值? | /?_height=100? | 通过特定 UI 属性的值获取子 UI 元素 |
名称=值值2? | /?_colora百分比=100? | 访问嵌套的 UI 元素属性。 还将在"UI Get 属性"节点中使用,用于获取任何深度的任何自定义属性的值。 |
?名称=@substring@? | /?_color=@FF@? | 通过特定 UI 属性的值子字符串获取子 UI 元素 |
--> | /-->@Inventory@ | 搜索整个嵌套层次结构,直到找到 |
-> | /->@Inventory@ | 如果元素的任何子元素与 UI 请求相关,则获取该元素 |
<- | /@Inventory@/<-/<- | 在层次结构中向后移动(上移) |
:请求A|请求B: | /:l_main|$Window$: | 如果任何请求应用于 UI 元素,则采用该元素。 您可以根据需要使用任意数量的变体 |
按属性值查找 UI 元素
使用运算符 /?name=value? 为了做到这一点。
返回具有特定颜色的 UI 元素
/?_color=#FFFFFFFF?
按颜色属性中的特定 alpha 值返回 UI 元素
/?_colora百分比=100?
获取自定义属性值
UI 获取属性节点返回任何自定义属性的值,甚至是嵌套属性。 此外,它还返回 bool 值"Exists",该值表示所需 UI 元素中请求属性的现有状态。

通过UI请求通过递归搜索来获取UI元素
/-->
这是运算符 /-->@undock@
它采用在 Text 属性中具有子字符串取消停靠的 UI 元素。 元素在层次结构中的深度无关紧要。
强烈推荐前缀,它可以使UI请求超级短而干净地阅读。 例如,它看起来有多干净 UI 请求取消停靠按钮。/-->多克父母/-->@undock@
为什么不使用 /-->@undock@
?
因为"undock"这个词可以在聊天中作为消息找到,或者像聊天列表中某个角色的昵称。 这就是为什么首先我们搜索停靠站按钮的根UI元素的原因/-->undockparent
,然后在里面搜索文本"undock"。 如果给我们100%保证这是取消停靠按钮。
可以与任何搜索运算符结合使用:/-->#main#
/-->@undock@
/-->$ChatWindowStack$
等