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

WaitUntilVisible

bool WaitUntilVisible(string ctrl, int timeoutMs)

Description
Waits until the specified UI control becomes visible on screen.
Polls every 100 ms until the control is visible (not offscreen) or the timeout expires.
Returns true if the control became visible within the timeout, false otherwise.
This is useful for controls that are hidden or animated into view after a delay.

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

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

Example
void main()
{
    bool visible = WaitUntilVisible("PNL_RESULT", 8000); // Wait up to 8 seconds
    if (visible)
    {
        VerifyEqual(GetText("PNL_RESULT"), "Success");
    }
}
#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