|
- Overview
- Selection mode
- Selection mode
- Display mode
- The different available modes
- Standard vertical mode or column gallery mode: Column anchoring
- Resizing the cells of a Looper control
- Input parameters and scrollbar display
- Input parameters
- Scrollbar
- Move and gesture
- Search control
- Filling a memory Looper control
- Variable row content
- Implementation
- Characteristics of internal windows
Characteristics of a Looper control in a window
To view the characteristics of the control, select "Description" in the context menu. In a window, the attributes not being proposed by default, only the characteristics of Looper control will be displayed. The main control characteristics are grouped in the following tabs: - The "General" tab displays the list of controls found in the Looper control.
- The "UI" tab is used to select the initial status, the selection mode, the popup menu, ...
Versions 22 and later This tab is also used to manage the fill of a memory Looper control (displaying a progress bar or a window, ...). For more details, see Filling a memory Looper control. New in version 22 This tab is also used to manage the fill of a memory Looper control (displaying a progress bar or a window, ...). For more details, see Filling a memory Looper control. This tab is also used to manage the fill of a memory Looper control (displaying a progress bar or a window, ...). For more details, see Filling a memory Looper control. - The "Details" tab is used to select the display mode of control, the input parameters and the scrollbar parameters.
- The "Content" tab is used to define the mode for filling the control and the breaks.
Versions 23 and laterThis tab is also used to manage the display of a different content in each row (via internal windows). For more details, see Different content in each row. New in version 23This tab is also used to manage the display of a different content in each row (via internal windows). For more details, see Different content in each row. This tab is also used to manage the display of a different content in each row (via internal windows). For more details, see Different content in each row. - The "Style" tab is used to define the style of different control elements.
The different available modes Several display modes are available: - Standard (grid): Display mode of standard Looper controls. In this case, the Looper control can be horizontal or vertical.
- Gallery in row: Display mode corresponding to the Gallery control in rows. See 'Image gallery' Looper control for more details.
Versions 24 and laterGallery in columns: Display mode corresponding to the Gallery control in columns. See 'Image gallery' Looper control for more details. New in version 24Gallery in columns: Display mode corresponding to the Gallery control in columns. See 'Image gallery' Looper control for more details. Gallery in columns: Display mode corresponding to the Gallery control in columns. See 'Image gallery' Looper control for more details.
These modes can be selected in the "Details" tab of the Looper control description window. Standard vertical mode or column gallery mode: Column anchoring The available options are: - Variable column width: If the width of the looper allows the display of an additional column, the number of columns does not change. Only the width of columns is modified.
- Variable width and number of columns: If the width of looper control allows the display of an additional column, this column is added. Before adding the column, the rows are stretched horizontally.
- Variable number of columns (left): If the width of looper control allows the display of an additional column, this column is added. Before adding the column, the columns are aligned on the left and an empty area may appear on the right.
- Variable number of columns (columns): If the width of looper control allows the display of an additional column, this column is added. Before adding a column, the columns are centered in the control and an empty area may appear on either side of the centered columns.
- Fixed width and number of columns (left): The number of columns and the width of the columns are not changed. Columns are aligned to the left.
- Fixed width and number of columns (centered): The number of columns and the width of the columns are not changed. The columns are centered.
Resizing the cells of a Looper control You can allow the user to resize the cells found in a Looper control. In the "Detail" tab of the HEX@ of the Control, you just have to check the "Resizable" option in front of the following options: - "Row height".
- "Column width".
Remark: The default height of a row can be specified. Input parameters and scrollbar display Input parameters The input parameters are used to specify the behavior of browsing Looper controls in edit. The possible options are as follows: - Cascading input: Pressing the Enter key in an edit control is used to automatically perform an input in a new row.
This option is not available. - Lock the record in modification: When modifying a row, the corresponding record in the data file will be automatically locked until the modification is validated.
- Save during row exit or Save during column exit: The record currently modified or created will be automatically saved in the corresponding data file as soon as the row is no longer selected. If this option is not selected, the record must be saved by programming with LooperSave.
Scrollbar The display of horizontal/vertical scrollbar can be: - automatic: the scrollbar will be displayed when necessary.
- always visible: the scrollbar will always be displayed.
- never visible: the scrollbar will never be displayed.
A tooltip can be displayed on the vertical scrollbar. This tooltip displays the number of the current row in relation to the total number of rows. Move and gesture The following options are available: - Move by pixel: a row may not be entirely displayed according to the scrollbar position.
- Touch move: used to handle the scrollbar via a touch screen.
Versions 18 and later New in version 18 Versions 24 and laterSearch control The Looper control allows searching in the data displayed. The available options are; - By using the menu of A.A.F.: The search will be performed via the "Search" option of the AAF menu (Automatic Application Features).
- Always visible: a search control will always be displayed above the Looper control.
- Never: No search can be performed in the Looper control.
New in version 24Search control The Looper control allows searching in the data displayed. The available options are; - By using the menu of A.A.F.: The search will be performed via the "Search" option of the AAF menu (Automatic Application Features).
- Always visible: a search control will always be displayed above the Looper control.
- Never: No search can be performed in the Looper control.
Search control The Looper control allows searching in the data displayed. The available options are; - By using the menu of A.A.F.: The search will be performed via the "Search" option of the AAF menu (Automatic Application Features).
- Always visible: a search control will always be displayed above the Looper control.
- Never: No search can be performed in the Looper control.
Versions 22 and later New in version 22 Versions 23 and later The Looper controls allow you to customize the appearance of rows: layout, content, ... Implementation To create a Looper control with variable content: - Creating a memory Looper control (filled by programming). This control must be a vertical Looper control containing a single column.
- Display the Looper control description window.
- In the "Content" tab of control description:
- Check "Use an internal window per row".
- Indicate the mode for unloading the internal windows:
 - Never: The internal windows are loaded when the associated row is visible in the control. The unload is never performed when using the control. It is performed when closing the window. This mode is recommended if there are few internal windows and if they do not contain too many controls .
Benefit: The entire data is always available Drawback: Large memory consumption. - When the row is no longer visible (option selected by default): The internal windows are loaded when the associated row is visible in the control. The unload is performed when the row is not visible anymore. This mode is recommended for the non-editable Looper controls. Indeed, if an internal window allows the input, the content typed by the user is lost when this internal window is no longer visible.
Benefit: Consumes few memory. Drawback: Loss of information typed by the user. - Row not visible + IW containing read-only controls: The internal windows are loaded when the associated row is visible in the control. The unload is performed according to the type of row:
- If the row contains no control allowing the user input, the associated internal window is unloaded when it is no longer visible.
- If the row allows the input, the associated internal window is never unloaded.
- Validate the control description window.
- Create the different internal windows corresponding to the rows of Looper control.
- Add the internal windows into the Looper control via the following functions:
| | LooperAddIW | Adds a row corresponding to an internal window at the end of a memory Looper control. | LooperInsertIW | Inserts a row corresponding to an internal window into a memory Looper control. | LooperModifyIW | Modifies a row corresponding to an internal window in a memory Looper control. |
Characteristics of internal windows The characteristics regarding the width and height of internal windows are as follows: - Height: The height of the row using an internal window exactly corresponds to the height of internal window defined in edit. The height of internal window cannot exceed the height of Looper control.
- Width:
- If the width of internal window is smaller than the width of Looper control, the width of internal window is automatically increased and anchors are applied.
- If the width of internal window exceeds the width of Looper control, the internal window is automatically truncated.
In most cases, we advise you to create the internal window with the smallest possible width and to use anchors.
Remark: If the internal window includes controls adapted to content, the row height will be increased or reduced according to the content. New in version 23 The Looper controls allow you to customize the appearance of rows: layout, content, ... Implementation To create a Looper control with variable content: - Creating a memory Looper control (filled by programming). This control must be a vertical Looper control containing a single column.
- Display the Looper control description window.
- In the "Content" tab of control description:
- Check "Use an internal window per row".
- Indicate the mode for unloading the internal windows:
 - Never: The internal windows are loaded when the associated row is visible in the control. The unload is never performed when using the control. It is performed when closing the window. This mode is recommended if there are few internal windows and if they do not contain too many controls .
Benefit: The entire data is always available Drawback: Large memory consumption. - When the row is no longer visible (option selected by default): The internal windows are loaded when the associated row is visible in the control. The unload is performed when the row is not visible anymore. This mode is recommended for the non-editable Looper controls. Indeed, if an internal window allows the input, the content typed by the user is lost when this internal window is no longer visible.
Benefit: Consumes few memory. Drawback: Loss of information typed by the user. - Row not visible + IW containing read-only controls: The internal windows are loaded when the associated row is visible in the control. The unload is performed according to the type of row:
- If the row contains no control allowing the user input, the associated internal window is unloaded when it is no longer visible.
- If the row allows the input, the associated internal window is never unloaded.
- Validate the control description window.
- Create the different internal windows corresponding to the rows of Looper control.
- Add the internal windows into the Looper control via the following functions:
| | LooperAddIW | Adds a row corresponding to an internal window at the end of a memory Looper control. | LooperInsertIW | Inserts a row corresponding to an internal window into a memory Looper control. | LooperModifyIW | Modifies a row corresponding to an internal window in a memory Looper control. |
Characteristics of internal windows The characteristics regarding the width and height of internal windows are as follows: - Height: The height of the row using an internal window exactly corresponds to the height of internal window defined in edit. The height of internal window cannot exceed the height of Looper control.
- Width:
- If the width of internal window is smaller than the width of Looper control, the width of internal window is automatically increased and anchors are applied.
- If the width of internal window exceeds the width of Looper control, the internal window is automatically truncated.
In most cases, we advise you to create the internal window with the smallest possible width and to use anchors.
Remark: If the internal window includes controls adapted to content, the row height will be increased or reduced according to the content. The Looper controls allow you to customize the appearance of rows: layout, content, ... Implementation To create a Looper control with variable content: - Creating a memory Looper control (filled by programming). This control must be a vertical Looper control containing a single column.
- Display the Looper control description window.
- In the "Content" tab of control description:
- Check "Use an internal window per row".
- Indicate the mode for unloading the internal windows:
 - Never: The internal windows are loaded when the associated row is visible in the control. The unload is never performed when using the control. It is performed when closing the window. This mode is recommended if there are few internal windows and if they do not contain too many controls .
Benefit: The entire data is always available Drawback: Large memory consumption. - When the row is no longer visible (option selected by default): The internal windows are loaded when the associated row is visible in the control. The unload is performed when the row is not visible anymore. This mode is recommended for the non-editable Looper controls. Indeed, if an internal window allows the input, the content typed by the user is lost when this internal window is no longer visible.
Benefit: Consumes few memory. Drawback: Loss of information typed by the user. - Row not visible + IW containing read-only controls: The internal windows are loaded when the associated row is visible in the control. The unload is performed according to the type of row:
- If the row contains no control allowing the user input, the associated internal window is unloaded when it is no longer visible.
- If the row allows the input, the associated internal window is never unloaded.
- Validate the control description window.
- Create the different internal windows corresponding to the rows of Looper control.
- Add the internal windows into the Looper control via the following functions:
| | LooperAddIW | Adds a row corresponding to an internal window at the end of a memory Looper control. | LooperInsertIW | Inserts a row corresponding to an internal window into a memory Looper control. | LooperModifyIW | Modifies a row corresponding to an internal window in a memory Looper control. |
Characteristics of internal windows The characteristics regarding the width and height of internal windows are as follows: - Height: The height of the row using an internal window exactly corresponds to the height of internal window defined in edit. The height of internal window cannot exceed the height of Looper control.
- Width:
- If the width of internal window is smaller than the width of Looper control, the width of internal window is automatically increased and anchors are applied.
- If the width of internal window exceeds the width of Looper control, the internal window is automatically truncated.
In most cases, we advise you to create the internal window with the smallest possible width and to use anchors.
Remark: If the internal window includes controls adapted to content, the row height will be increased or reduced according to the content.
Related Examples:
|
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]
|
|
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 - ...
|
|
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.
|
This page is also available for…
|
|
|
| |
| Click [Add] to post a comment |
|
| |
|
| |
| |
| |
| |
| |
| |
| | |
| |