0-Based Arrays

This functionality is supported only if you are using the Classic Agent.

When you access arrays using the methods provided in the Visual Basic and ActiveX extension, the arrays are 0-based; that is, the first value is stored in slot 0. In contrast, GetArrayProperty and SetArrayProperty, two methods provided for backward compatibility with previous releases, used 1-based arrays. The following example illustrates the current and old syntax:

testcase GetColWidthForGrid () appstate none

   INTEGER iWidth1, iWidth2

   //Get width of col. 1 in MyGrid, using current syntax
   //Note that index (passed to GetColWidth method) is 0
   iWidth1 = MyApp.MyGrid.GetColWidth(0)

   //Changes the width of col. 1, using current syntax
   MyApp.MyGrid.SetColWidth (0, 555)

   //Gets width of col. 1 in MyGrid, using old syntax
   //Note that index of the ColWidth property arrow 
   //(passed to GetArrayProperty method) is 1
   iWidth2 = MyApp.MyGrid.GetArrayProperty ("ColWidth", 1)

Passing an index of 0 to GetArrayProperty causes an error at runtime.