ZenoTest
ZenoTest — Windows desktop UI test automation for Qt, WPF, WinForms & native apps. Record, script, and run automated GUI tests with CI/CD integration.

WaitUntilEnabled

bool WaitUntilEnabled(string ctrl, int timeoutMs)

Description
Waits until the specified UI control becomes enabled (interactive).
Polls every 100 ms until the control is enabled or the timeout expires.
Returns true if the control became enabled within the timeout, false otherwise.
This is useful after loading operations or async processing where controls are initially disabled.

Parameters
- ctrl - Identifier of the UI control to monitor.
- timeoutMs - Maximum time to wait in milliseconds.

Returns
true if the control became enabled within the timeout, false if the timeout expired.

Example
void main()
{
    bool ready = WaitUntilEnabled("BTN_SUBMIT", 10000); // Wait up to 10 seconds
    if (ready)
    {
        LeftMouseClick("BTN_SUBMIT");
    }
}
#define #include abs Array ceil CloseAUT Console mode do...while DoubleClick DragAndDrop Execute Fail File floor for Format GetAUTFileVersion GetAUTProductVersion GetAUTQtVersion GetAUTSuspectedCompiler GetAUTSuspectedFramework GetClipboard GetCurrentDate GetCurrentTime GetCurrentWorkingDir GetEnv GetName GetProcessID GetProcessIDHandle GetQtProperty GetText GetTimestamp GetValue Handle HasFocus IsAUT64Bit IsChecked IsEnabled IsVisible LeftMouseClick LeftMouseDown LeftMouseUp max MiddleMouseClick MiddleMouseDown MiddleMouseUp min MouseMove MouseWheel Pass pow Predefined Constants Print rand Regex RegexMatch RightMouseClick RightMouseDown RightMouseUp round Script Language SendKeys SendMessage SetClipboard SetFocus SetNotFoundBehavior SetQtProperty ShellProcess Sleep sqrt srand StartAUT string TerminateProcess TimerStart TimerStop TimerVerifyLess vec2d VerifyContains VerifyEmpty VerifyEndsWith VerifyEqual VerifyExists VerifyFalse VerifyGreater VerifyGreaterEqual VerifyLess VerifyLessEqual VerifyNotEqual VerifyNotExists VerifyScreenCompareEdgeBased VerifyScreenComparePixelExact VerifyStartsWith VerifyTrue WaitForControl WaitUntilEnabled WaitUntilVisible while