ControlGetItems

返回 ListBox, ComboBox 或 DropDownList 中项目/行数组.

Items := ControlGetItems(Control , WinTitle, WinText, ExcludeTitle, ExcludeText)

参数

Control

类型: 字符串, 整数对象

控件的 ClassNN, 文本或 HWND, 或具有 Hwnd 属性的对象. 有关详情, 请参阅 Control 参数.

WinTitle

类型: 字符串, 整数对象

识别目标窗口的窗口标题或其他条件. 请参阅 WinTitle.

WinText

类型: 字符串

如果存在, 此参数必须是目标窗口的单个文本元素的子字符串(和内置的 Window Spy 工具显示的一样). 如果 DetectHiddenText 为 ON, 那么会检测隐藏文本元素.

ExcludeTitle

类型: 字符串

标题中含有此参数值的窗口将被排除.

ExcludeText

类型: 字符串

文本中含有此参数值的窗口将被排除.

返回值

类型: Array

函数返回项目/行的数组.

错误处理

如果找不到窗口或控件, 或者控件的类名不包含 "Combo" 或 "List", 则抛出 TargetError.

失败时抛出 Error, 例如, 如果消息返回错误码或不能被发送.

备注

有些应用程序私自存储了它们的项目数据, 这使得它们的文本无法被检索. 在这种情况下, 通常不会抛出异常, 但所有检索到的字段都是空的.

窗口标题和文本是区分大小写的. 除非 DetectHiddenWindows 被打开, 否则不会检测隐藏窗口.

ListViewGetContent, WinGetList, Control 函数

示例

逐个访问项目.

for item in ControlGetItems("ComboBox1", WinTitle)
    MsgBox "Item number " A_Index " is " item

通过索引访问特定的项目.

items := ControlGetItems("ListBox1", WinTitle)
MsgBox "The first item is " items[1]
MsgBox "The last item is " items[-1]
unixetc