FormListControl.redrawItems(Int32, Int32) Method

Definition

Updates a range of items in a form list control.

public:
 virtual bool redrawItems(int _idxFirst, int _idxLast);
public virtual bool redrawItems (int _idxFirst, int _idxLast);
abstract member redrawItems : int * int -> bool
override this.redrawItems : int * int -> bool
Public Overridable Function redrawItems (_idxFirst As Integer, _idxLast As Integer) As Boolean

Parameters

_idxFirst
Int32

An Integer data type that specifies the zero-based index for the last item in the range.

_idxLast
Int32

An Integer data type that specifies the zero-based index for the last item in the range.

Returns

true if the items are updated; otherwise, false.

Remarks

The following example shows a call to the redrawItems method to update a range of items in the form list control. The FormListControl.moveItem method moves a specified item. The FormListControl.getCount method retrieves the number of items in the control. The while select statement retrieves account numbers from the CustTable table and then stores the data in a container. The items in the variable are added to the form list control by calling the FormListControl.addItem method.

static void createForm2(Args _args) 
{ 
    Args args; 
    Form form; 
    FormRun formRun; 
    FormBuildDesign formBuildDesign; 
    FormBuildDataSource formBuildDataSource; 
    FormBuildListControl formBuildListControl; 
    FormListControl formListControl; 
    FormListItem formListItem; 
    FormListColumn formListColumn; 
    int idx4; 
    str string; 
    container conAccountNum; 
    DictTable dictTable; 
    CustTable custTable; 
    int numAccounts; 
    int i; 
    int item; 
    int numItems; 
    // Create the form header. 
    form = new Form(); 
    // Add data sources to the form. 
    dictTable = new DictTable(77); 
    formBuildDataSource = form.addDataSource(dictTable.name()); 
    formBuildDataSource.table(dictTable.id()); 
    // Create the form design. 
    formBuildDesign = form.addDesign("Design"); 
    formBuildDesign.caption("myForm"); 
    // Add a form list control. 
    formBuildListControl = 
 formBuildDesign.addControl(FormControlType::ListView,"List"); 
    idx4 = formBuildListControl.id(); 
    args = new Args(); 
    args.object(form); 
    // Create the run-time form. 
    formRun = new FormRun(Args); 
    formRun.run(); 
    formRun.detach(); 
    formListControl = formRun.control(idx4); 
    formListControl.viewType(FormListViewType::Report); 
    formListControl.height(120); 
    formListControl.widthMode(FormWidth::ColumnWidth); 
    // Add columns to form list control. 
    formListControl.addColumn(1, new FormListColumn("Account Numbers",1,120)); 
    // Add items to the form list control. 
    while select custTable 
        where custTable.AccountNum >= "4000" 
            && custTable.AccountNum <= "4040" 
    { 
        conAccountNum += [[custTable.AccountNum]]; 
    } 
    numAccounts = conlen(conAccountNum); 
    for(i = 1; i <= numAccounts; i++) 
    { 
        string = conPeek(conAccountNum,i); 
        formListItem = new FormListItem(string); 
        item = formListControl.addItem(formListItem); 
    } 
    formListControl.getCount(); 
    formListControl.moveItem(2,10); 
    formListControl.redrawItems(0,20); 
}

Applies to