createIterator(): Iterator;
The createIterator method creates an iterator for the Dictionary class. Use an iterator associated with the dictionary to remember the current position in the dictionary. (For details about iterators, see the Iterator class.)
The following examples show the use of the iterator.
load() updating; begin centreWindow; iter := app.myCompany.allCustomers.createIterator; iter.reset; iter.next(cust); if cust <> null then textBoxName.text := cust.name; textBoxAddress.text := cust.address; textBoxContact.text := cust.contact; listBoxCustomers.listCollection(app.myCompany.allCustomers, true, 0); listBoxCustomers.listIndex := 1; else textBoxName.text := "No Customer Instances"; endif; end; buttonFillRight_click(btn: Button input) updating; vars count : Integer; startTime : Time; begin app.mousePointer:= self.MousePointer_HourGlass; startTime := app.clock.Time; listBoxRight.clear; textBoxRightStart.text := null; iter := app.myCompany.allProducts.createIterator; count := 1; while count <= listBoxRight.lines do iter.next(myProduct); listBoxRight.addItem(myProduct.name); count := count + 1; endwhile; if theArray = null then create self.theArray transient; else self.theArray.clear; endif; app.myCompany.allProducts.copy(self.theArray); listBoxScrollBar.min := 1; listBoxScrollBar.value := 1; listBoxScrollBar.max := self.theArray.size - listBoxRight.lines - 1; listBoxScrollBar.largeChange := (self.theArray.size/20).Integer; epilog labelRight.caption :="Time Taken := " & ((app.clock.Time - startTime).Integer/1000).String & " Seconds"; app.mousePointer:= self.MousePointer_Arrow; end;