Help / WLanguage / WLanguage functions / Controls, pages and windows / Looper functions
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WindowsLinuxPHPWEBDEV - Browser code
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Stored procedures
Adds a row as an internal window at the end of a Looper control populated programmatically.
This makes it possible to create nested Looper controls or rows with different content.
Caution: To use this function, the "Use an internal window per row (LooperAddIW function)" option must be checked ("Content" tab of the control description).
LooperAddIW(LOOP_Component, IW_PROCESSOR, "i7", 2)
LooperAddIW(LOOP_Component, IW_DISK, "SAMDATA", "SSD", 20 000 000)
<Result> = LooperAddIW(<Looper control> , <Internal window> [, <Parameter 1> [... [, <Parameter N>]]])
<Result>: Integer
Number of the new row.
<Looper control>: Control name
Name of the Looper control to be used.
<Internal window>: Window name
Name of the internal window to be used to create the row.
<Parameter 1>: Type corresponding to the parameter (optional)
First parameter to be passed to the internal window. This parameter is passed to the "Global declarations" event of the internal window.
<Parameter N>: Type corresponding to the parameter (optional)
Nth parameter to be passed to the internal window. This parameter is passed to the "Global declarations" event of the internal window.
  • If one of the controls in the internal window is anchored based on its content, the row height will adapt automatically. Otherwise, the row height will be the height of the internal window in edit mode.
  • The name of the internal window used for a row can be retrieved using the following syntax:
    <Looper control>[Row].Name
  • Parameters passed to the internal window: Parameters are specified in the "Global declarations" event of the internal window. Simply write the following line of code at the start of the event:
    PROCEDURE <Window name>(<Parameter 1> [, ...] [, <Parameter N>])
    For more details, see Window with parameters.
  • Tip: To get the number of the row used (click on a button in the internal window, for example), create an attribute in the Looper control and assign the result of LooperAddIW.
  • Caution: The maximum number of controls that can be created is set to 1000 (the number of controls per row depends on the internal window added).
    The following error occurs if more than 1000 controls are created: "Overflow: the looper contains more than 1000 controls in xxx rows".
Related Examples:
WM Sports Cross-platform examples (WINDEV Mobile): WM Sports
[ + ] This example is a sport application used to save your performances.
The application calculates the distance, the time, the average speed and the number of calories spent according to the sport.
The run is displayed on a map control via markers and an itinerary.

The example also includes a server part used to synchronize the user data.
This webservice is available in the WEBDEV "WW_Sports" example.
Business / UI classification: UI Code
Component: wd290obj.dll
Minimum version required
  • Version 23
This page is also available for…
Click [Add] to post a comment

Last update: 06/22/2023

Send a report | Local help