largeChange

Type: Integer

Availability: Read or write at any time

The largeChange property contains the amount of change (in pixels) to the value property in a ScrollBar control when the user clicks the area between the scroll box and scroll arrow.

You can specify any valid integer greater than the value of the min property and less than the value of the max property. By default, the largeChange property value is 100.

The Windows environment automatically sets proportional scrolling increments for scroll bars on form windows, combo boxes, and list boxes, based on the amount of data in the control. For a scroll bar control, however, you must specify these increments.

Use the largeChange property to set scrolling increments appropriate to how the scroll bar is being used.

As scroll bars use the Windows scroll bar API calls that set the thumb size to a size that reflects the size of the scroll bar range and the value of the largeChange property, the larger the value of the largeChange property, the larger the thumb size.

The following example shows the use of the largeChange property.

buttonFillRight_click(btn: Button input) updating;
vars
    count    : Integer;
    start    : Time;
    iter     : Iterator;
    theArray : ObjectArray;
begin
    app.mousePointer  := self.MousePointer_HourGlass;
    start             := app.clock.Time;
    listBoxRight.clear;
    textBoxStart.text := null;
    iter              := app.myCompany.allProducts.createIterator;
    foreach count in 1 to listBoxRight.lines do
        iter.next(myProduct);
        listBoxRight.addItem(myProduct.name);
    endforeach;
    if theArray = null then
        create theArray transient;
    else
        theArray.clear;
    endif;
    app.myCompany.allProducts.copy(theArray);
    listBoxScrollBar.min         := 1;
    listBoxScrollBar.value       := 1;
    listBoxScrollBar.max         := theArray.size - listBoxRight.lines - 1;
    listBoxScrollBar.largeChange := (theArray.size/20).Integer;
epilog
    labelRight.caption := "Time Taken := " & ((app.clock.Time -
                          start).Integer/1000).String & " Seconds";
    app.mousePointer:= self.MousePointer_Arrow;
end;

Typically, you set the largeChange property in the JADE development environment Painter. You can also reset it in logic at run time when the scrolling increment must change dynamically.

Use the max and min properties to set the maximum and minimum ranges of a scroll bar control.