ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

This content has been translated automatically.  Click here  to view the French version.
Help / Developing an application or website / Controls, windows and pages / Controls: Available types / Looper control
  • Overview of the Looper control
  • Creating a Looper control
  • Creating a horizontal Looper control
  • Attributes of a Looper control
  • Attributes of a Looper control in WEBDEV
  • Attributes of a Looper control in WINDEV or WINDEV Mobile
  • Vocabulary
  • Notes
  • Swapping a Table control and a Looper control
  • Refactoring: create a RepeatString Looper control from selected fields
WINDEV
WindowsLinuxJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac Catalyst
Others
Stored procedures
Overview of the Looper control
A Looper control is used to repeat controls in a specific area. Looper controls are "containers" that can hold and repeat controls a given number of times (Edit controls, Static Text controls, Combo Box controls, etc.).
The Looper control allows displaying and entering data more easily.
Compared to the Table control, the Looper control presents richer interfaces as all types of controls can be repeated.
The information displayed in the Looper control can:
  • control RepeatString by programming.
  • come from a data file or a query: this is referred to as control RepeatString.
  • come from an Variable WLanguage: this is referred to as an Looper control on Variable.
Remarks:
  • According to the platforms, the Looper controls can be displayed:
    • vertically (by default on all the platforms).
    • horizontally.
      In WEBDEV, this type of control corresponds to the Linear Looper controls.
  • AndroidiPhone/iPad The "Pull to refresh" feature is available for Looper controls in Android and iOS. For more details, see Pull to Refresh on Table and Looper controls (Android/iOS).
  • AndroidiPhone/iPad Most smartphones or tablets show a "Next" button to allow the user to go to the next element. In the case of an Edit control within an Looper control, this key cannot be used to go to the next row, or to enable cascading input. You must create a specific interface for this type of input.
Creating a Looper control
To create a Looper control:
  1. On the "Creation" tab, in the "Data" group:
    • WINDEVWINDEV Mobile expand "Looper" and select "Looper (vertical)".
      WINDEVWindowsAndroidiPhone/iPad Note: A horizontal RepeatString zone can be created using the "Horizontal RepeatString zone" option..
    • WEBDEV - Server code expand "Looper" and select "Looper".
      Note: It is possible to create a RepeatString Gallery zone using the "Line Gallery" and "Column Gallery" options..
  2. Click where the control will be created in the window or page. The Looper control creation wizard starts automatically.
Remarks:
  • WINDEV The dimensions of the control are optimized to take up the available space at the specified position. If the field size does not suit you, use the Ctrl + Z key combination: the field will return to its default size..
  • iPhone/iPad The iPhone and iPad window creation wizard can also be used to create preset Loopers. For more details, see Windows for iPhone and iPad.
To view the control characteristics, select "Description" in the context menu of the control.
For more details:
WINDEVWindowsAndroidiPhone/iPad

Creating a horizontal Looper control

You also have the ability to create horizontal Looper controls. In this case, the control will include a horizontal scrollbar used to scroll the different rows.
To create a horizontal Looper control:
  1. On the "Creation" tab, in the "Data" group, expand "Looper" and select "Horizontal Looper".
  2. Click where the control will be created in the window or page. The Looper control creation wizard starts automatically.
To view the characteristics of the control, select "Description" in the context menu.
Attributes of a Looper control
WEBDEV - Server codeWEBDEV - Browser codePHP

Attributes of a Looper control in WEBDEV

A Looper control includes:
  • controls, that are repeated on each row.
  • attributes. An attribute defines the control characteristic that will change on each row. For example, if the value and color of the PRICE control must change on each row, you need to define two different attributes for the same control.
To get or set the characteristics of a control (value, color, etc.), simply manipulate the control or the corresponding attribute programmatically.
WINDEVAndroidiPhone/iPadJava

Attributes of a Looper control in WINDEV or WINDEV Mobile

A Looper control includes controls that are repeated on each row.
WINDEVWindows The content of the Table or Chart control can be different for each row, for example. For more details, see Displaying different content on each row.
To get or set the characteristics of a control (value, color, etc.), simply manipulate it programmatically.
Remark: For WEBDEV compatibility, it is also possible to use the following attributes. In this case, to get or set the characteristics of a control (value, color, etc.), simply manipulate the control or the corresponding attribute programmatically.
Vocabulary
To easily handle a Looper control, you must be familiar with the following vocabulary:
NameDefinition
AttributeAn attribute is the association between the control in the looper and the property of this control that will be modified on each row.
For each attribute, you must define:
  • the attribute name.
  • the name of the control in the looper.
  • the property of the control that will be modified on each row (value, color, etc.).
WINDEVWINDEV Mobile Reminder: Attributes are not mandatory.
Looper based on a data fileThe Looper control is based on a data file or on a query. A record from the data file is displayed on each row. Two types of Looper controls based on a data file are available:
  • RepeatString file "Loaded into memory ": The content of control is loaded into memory and displayed.. The access to the different control elements is faster. This mode is reserved for data files with less than 100,000 records.
  • RepeatString file "Direct access (unlimited) ": Looper control directly displays of the data file or query content. The current record corresponds to the selected element. Selecting an element in the control triggers an access to the linked data file. This mode is reserved for data files with more than 100 000 records.
Looper populated programmaticallyThe Looper control is not based on a data file or on a query. The elements displayed in the control are defined by the developer (through programming).
Looper based on a variableThe Looper control is based on a variable (global to the project, window, page, class member, etc.).
Notes

Swapping a Table control and a Looper control

WINDEV, WINDEV Mobile and WEBDEV allow you to automatically transform a Table control into a Looper control:
  1. Select the Table control to transform.
  2. On the "Modification" tab, in the "Transformations" group, expand "Refactoring and swapping" and select "Table to Looper".

Refactoring: create a RepeatString Looper control from selected fields

WINDEV, WINDEV Mobile and WEBDEV allow you to automatically create a Looper control from the controls currently selected:
  1. Select the desired controls.
  2. On the "Modification" tab, in the "Transformations" group, expand "Refactoring and swapping" and select "Create a looper from the selection".
Related Examples:
The Looper control (display the bounds) Unit examples (WEBDEV): The Looper control (display the bounds)
[ + ] This example explains how to display the bounds of a looper with custom pager.
Displaying/Hiding an input area Unit examples (WEBDEV): Displaying/Hiding an input area
[ + ] This example explains how to display/hide an input area via a looper.
Adding an input area is performed by adding a row in the looper.
The Looper control (selection bar) Unit examples (WEBDEV): The Looper control (selection bar)
[ + ] This example explains how to simulate a selection bar in a looper
The Looper control (modify the number of rows displayed) Unit examples (WEBDEV): The Looper control (modify the number of rows displayed)
[ + ] This example explains how to modify the number of rows displayed in a looper.
The Ajax Looper control Unit examples (WEBDEV): The Ajax Looper control
[ + ] This example explains how to use the Ajax looper. This example allows you to:
- Clear the looper
- Fill the looper
- Sort the looper
The Ajax Looper control in PHP Unit examples (WEBDEV): The Ajax Looper control in PHP
[ + ] This example presents the use of Ajax loopers in PHP.
This example allows you to:
- Clear the looper
- Fill the looper
- Sort the looper
The Looper control Unit examples (WINDEV): The Looper control
[ + ] Using the Looper control.
You have the ability to add a row with LooperAddLine.
The following syntax is used to retrieve the existing values:
  AttributeName[Subscript]
webmillion Complete examples (WEBDEV): webmillion
[ + ] The following topics are presented in this example:
1/ Using queries
2/ Using "browsing" loopers in automatic browse
3/ Using "browsing" loopers in manual browse

Summary of the example supplied with WEBDEV:
This Web application, powered by WEBDEV, is used to display, find and order tee-shirts.
Once the order is placed, you have the ability to use the PayBox module for secure payment.

This example contains a page used to generate a data file containing an important number of records.
WM Managing Contacts Cross-platform examples (WINDEV Mobile): WM Managing Contacts
[ + ] This example presents the management of contacts for Android et iOS.
It is used o:
- list the contacts found on the phone
- call the contacts
- send SMSs to the contacts
- ...
WM ToDo List Cross-platform examples (WINDEV Mobile): WM ToDo List
[ + ] This example is a manager of To-Do Lists.
The project is using the gestures in the loopers in order to move and delete the lists and tasks.
The data is stored in a HFSQL database.
WM Attendance Cross-platform examples (WINDEV Mobile): WM Attendance
[ + ] This application is an attendance manager. It allows you to list the persons who attended a meeting.
The database is filled beforehand with the list of registered persons.
You have the ability to find a person by using his/her name.
The following topics are presented in this example:
1/ using a browsing looper based on a query
2/ using a database in HFSQL format.
Photo_Gallery Complete examples (WEBDEV): Photo_Gallery
[ + ] This example is a photo gallery site and is composed of 2 main parts:
- the "visitor" part, developed in Active WEBDEV Page mode and SEO-compatible.
- the administration part, secured and developed in standard WEBDEV mode.  
 
These are some of the available features:
- organize photos via albums
- include links to social networks
- enable users to comment on posts
- user login via WEBDEV'S GPU
- contact form
- ability to upload, describe, and classify photos via albums on the administration side
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 09/14/2024

Send a report | Local help