Description
Specifies whether the whole object or any of its parts is currently visible on screen.
Declaration
TestObj.VisibleOnScreen
| Read-Only Property | Boolean |
| TestObj | A variable, parameter or expression that specifies a reference to one of the objects listed in the Applies To section | |||
Applies To
All onscreen objects.
View Mode
To view this property in the Object Browser panel and in other panels and dialogs, activate the Advanced view mode.
Property Value
True if any part of the object is currently visible on screen, otherwise False.
Remarks
-
The
VisibleOnScreenproperty returnstrue, if a control or its part is on screen and can accept mouse clicks. For example, focused controls whose opacity is set to 0 are absolutely transparent (that is, invisible), but theirVisibleOnScreenproperty will returntrue. -
The
VisibleOnScreenproperty is alwaysfalsefor disabled Silverlight controls. -
The Name Mapping repository of your project uses various object properties to identify objects in your tested application. We do not recommend that you use
VisibleOnScreenas an object identification property. It can take much time for TestComplete to get the property value that can significantly decrease your test performance, especially if the Extended Find is used.For the same reason, we do not recommend that you use the
VisibleOnScreenproperty in search criteria of theFind,FindChild,FindAll, andFindAllChildrenmethods. TestComplete will have to get the value of this property of every object it checks when calling the methods that can decrease your test performance.
Example
The following example demonstrates how to use the VisibleOnScreen property in scripts:
JavaScript, JScript
var w = Sys.Process("Notepad").Window("Notepad");
if (w.VisibleOnScreen)
w.Window("Edit").Keys("Test")
else
Log.Error("The Notepad window is invisible.");
Python
w = Sys.Process("notepad").Window("Notepad")
if (w.VisibleOnScreen):
w.Window("Edit").Keys("Test")
else:
Log.Error("The Notepad window is invisible")
VBScript
Dim w
Set w = Sys.Process("Notepad").Window("Notepad")
If w.VisibleOnScreen Then
w.Window("Edit").Keys("Test")
Else
Log.Error "The Notepad window is invisible."
End If
DelphiScript
var w;
begin
w := Sys.Process('Notepad').Window('Notepad');
if w.VisibleOnScreen then
w.Window('Edit').Keys('Test')
else
Log.Error('The Notepad window is invisible.');
end;
C++Script, C#Script
var w = Sys["Process"]("Notepad")["Window"]("Notepad");
if (w["VisibleOnScreen"])
w["Window"]("Edit")["Keys"]("Test")
else
Log["Error"]("The Notepad window is invisible.");
See Also
Enabled Property
Visible Property
Focused Property (Window and BrowserWindow Objects)
