The following script routine demonstrates how you can work with TListBox items (from the Borland VCL) directly from a TestComplete script using methods and properties of the Win32ListBox
object. This example assumes that the application displays a form with a TListBox control on it. First, SaveItems
retrieves the selected list box items and then posts them to the test log.
JavaScript, JScript
function LogSelectedItems()
{
var p, lb, i;
// Obtains the list box object
p = Sys.Process("Project1");
lb = p.Window("TForm1", "Form1").Window("TListBox", "ListBox1");
// Goes through the list box items
for (i=0; i<lb.wItemCount; i++)
// If an item is selected, ...
if (lb.wSelected(i))
// ... posts the item caption to the log
Log.Message(lb.wItem(i));
}
Python
def LogSelectedItems():
# Obtains the list box object
p = Sys.Process("Project1")
lb = p.Window("TForm1", "Form1").Window("TListBox", "ListBox1")
# Goes through the list box items
for i in (0, lb.wItemCount-1):
# If an item is selected, ...
if lb.wSelected[i]:
# ... posts the item caption to the log
Log.Message(lb.wItem[i])
VBScript
Sub LogSelectedItems
Dim p, lb, i
' Obtains the list box object
Set p = Sys.Process("Project1")
Set lb = p.Window("TForm1", "Form1").Window("TListBox", "ListBox1")
' Goes through the list box items
For i = 0 To lb.wItemCount - 1
' If an item is selected, ...
If lb.wSelected(i) Then
' ... posts the item caption to the log
Log.Message(lb.wItem(i))
End If
Next
End Sub
DelphiScript
procedure LogSelectedItems;
var p, lb, i : OleVariant;
begin
// Obtains the list box object
p := Sys.Process('Project1');
lb := p.Window('TForm1', 'Form1').Window('TListBox', 'ListBox1');
// Goes through the list box items
for i := 0 to lb.wItemCount-1 do
// If an item is selected, ...
if lb.wSelected[i] then
// ... posts the item caption to the log
Log.Message(lb.wItem[i]);
end;
C++Script, C#Script
function LogSelectedItems()
{
var p, lb, i;
// Obtains the list box object
p = Sys["Process"]("Project1");
lb = p["Window"]("TForm1", "Form1")["Window"]("TListBox", "ListBox1");
// Goes through the list box items
for (i=0; i<lb["wItemCount"]; i++)
// If an item is selected, ...
if (lb["wSelected"](i))
// ... posts the item caption to the log
Log["Message"](lb["wItem"](i));
}