返回列表框, 组合框或下拉列表中条目数组.
Items := ControlGetItems(ControlID , WinTitle, WinText, ExcludeTitle, ExcludeText)
控件的 ClassNN, 文本或 HWND, 或具有 Hwnd 属性的对象. 有关详情, 请参阅控件标识符.
如果这些都是空白或省略, 将使用上次找到的窗口. 否则, 为 WinTitle 指定窗口标题或其他条件, 来标识目标窗口, 和/或为 WinText 指定目标窗口的单个文本元素的子字符串(由包含的 Window Spy 实用程序显示).
ExcludeTitle 和 ExcludeText 可用于根据标题或文本排除一个或多个窗口. 它们的规范类似于 WinTitle 和 WinText, 除了 ExcludeTitle 不识别除窗口标题之外的任何条件.
窗口标题和文本是区分大小写的. 默认情况下, 不检测隐藏窗口, 而检测隐藏文本元素, 除非使用 DetectHiddenWindows 和 DetectHiddenText 进行更改; 当使用纯 HWND 时, 都会检测隐藏窗口. 默认情况下, 窗口标题的任意位置包含 WinTitle 或 ExcludeTitle 就能形成匹配, 除非使用 SetTitleMatchMode 进行了更改.
类型: Array
函数返回每个条目文本内容的数组.
如果找不到窗口或控件, 或者控件的类名不包含 "Combo" 或 "List", 则抛出 TargetError.
失败时抛出 Error, 例如, 如果消息返回错误码或不能被发送.
这个函数最适用于常见的或预定义的 Microsoft 控件; 而某些应用程序则使用自定义或修改后的控件, 在这种情况下, 函数可能无法按预期工作.
有些应用程序私自存储了它们的项目数据, 这使得它们的文本无法被检索. 在这种情况下, 通常不会抛出异常, 但所有检索到的字段都是空的.
要获取条目总数, 请使用 Array.Length, 如示例 #3 所示. 若要了解选项卡控件中包含的页面数, 请遵循以下示例:
PageCount := SendMessage(0x1304,,, "SysTabControl321", WinTitle) ; 0x1304 为 TCM_GETITEMCOUNT.
ListViewGetContent, WinGetList, 控件函数
在图形用户界面或非图形用户界面窗口中, 逐个访问组合框中的条目.
for entry in ControlGetItems("ComboBox1", "Some Window Title")
MsgBox "Entry number " A_Index " is " entry