ControlGetChoice

Returns the text of the currently selected entry in a list box, combo box, or drop-down list.

Choice := ControlGetChoice(ControlID , WinTitle, WinText, ExcludeTitle, ExcludeText)

Parameters

ControlID

Type: String, Integer or Object

The control's ClassNN, text or HWND, or an object with a Hwnd property. For details, see Control Identifiers.

WinTitle, WinText, ExcludeTitle, ExcludeText

Type: String, Integer or Object

If each of these is blank or omitted, the Last Found Window will be used. Otherwise, specify for WinTitle a window title or other criteria to identify the target window and/or for WinText a substring from a single text element of the target window (as revealed by the included Window Spy utility).

ExcludeTitle and ExcludeText can be used to exclude one or more windows by their title or text. Their specification is similar to WinTitle and WinText, except that ExcludeTitle does not recognize any criteria other than the window title.

Window titles and text are case-sensitive. By default, hidden windows are not detected and hidden text elements are detected, unless changed with DetectHiddenWindows and DetectHiddenText. When using pure HWNDs, hidden windows are always detected. By default, a window title can contain WinTitle or ExcludeTitle anywhere inside it to be a match, unless changed with SetTitleMatchMode.

Return Value

Type: String

This function returns the text of the currently selected entry. If no entry is selected, an exception is thrown.

In a multi-select list box, the return value is always the text of the entry with keyboard focus. This is usually the most recently selected entry when multiple entries have been selected.

Error Handling

A TargetError is thrown if the window or control could not be found, or if the control's class name does not contain "Combo" or "List".

An Error is thrown on failure.

Remarks

This function is intended for use with controls in a non-GUI window, i.e. a window that is not created with the Gui function. It works best with common or predefined Microsoft controls; some applications use custom or modified controls, in which case the function might not work as expected. For GUI controls, it is usually more convenient to use GuiControl.Value.

ControlChooseString, ControlGetIndex, ControlChooseIndex, GuiControl.Value, GuiControl.Choose, Control functions