Description
Objects can have children. For example, windows are children of a process, processes are children of the Sys object, etc. Each object maintains a list of child objects. The Child method of a parent object returns one child object by its index in the list.
Declaration
TestObj.Child(Index)
| TestObj | A variable, parameter or expression that specifies a reference to one of the objects listed in the Applies To section | |||
| Index | [in] | Required | Integer | |
| Result | Object | |||
Applies To
All processes, windows, controls and onscreen objects.
View Mode
To view this method in the Object Browser panel and in other panels and dialogs, activate the Advanced view mode.
Parameters
The method has the following parameter:
Index
Specifies the zero-based index of the child you want to get.
Result Value
A child object that has the specified index.
Example
The following example demonstrates how to iterate through all child objects of an object. It iterates through the current active window’s children in a loop and posts their names to the test log.
JavaScript, JScript
function GetWindowNames()
		{
  var w, i, wndChild;
  w = Sys.Desktop.ActiveWindow();
  Log.Message(w.Name, w.FullName);
  // Add a for loop that iterates through child objects
  for (i=0; i < w.ChildCount; i++)
  {
    wndChild = w.Child(i);
    // Post the current child name to the test log
    Log.Message(wndChild.Name, "", 0);
  }
	} 
Python
def GetWindowNames():
  w = Sys.Desktop.ActiveWindow()
  Log.Message(w.Name, w.FullName)
  # Add a for loop that iterates through child objects
  for i in range ( 0 , w.ChildCount):
    wndChild = w.Child(i)
    # Post the current child name to the test log
    Log.Message(wndChild.Name, "", 0)VBScript
Sub GetWindowNames
  Set w = Sys.Desktop.ActiveWindow
  ' Add a for loop that iterates through child objects
  For i = 0 To w.ChildCount - 1 
    Set wndChild = w.Child(i)
    ' Post the current child name to the test log
    Log.Message wndChild.Name
  Next
End Sub
DelphiScript
procedure GetWindowNames;
	var
  i : integer;
  w, wndChild : OleVariant;
	begin
  w := Sys.Desktop.ActiveWindow;
  Log.Message(w.Name, w.FullName);
  // Add a for loop that iterates through child objects
  for i := 0 to (w.ChildCount - 1) do
  begin
    wndChild := w.Child(i);
    // Post the current child name to the test log
    Log.Message(wndChild.Name, '', 0);
  end;
end;
C++Script, C#Script
function GetWindowNames()
	{
  var w, i, wndChild;
  w = Sys["Desktop"]["ActiveWindow"]();
  Log["Message"](w["Name"], w["FullName"]);
  // Add a for loop that iterates through child objects
  for (i=0; i < w["ChildCount"]; i++)
  {
    wndChild = w["Child"](i);
    // Post the current child name to the test log
    Log["Message"](wndChild["Name"], "", 0);
  }
	} 
See Also
ChildCount Property
WaitChild Method
Find Method
FindChild Method
FindAll Method
FindAllChildren Method
FindId Method
Refresh Method
