PC SOFT

ONLINE HELP
FOR WINDEV, WEBDEV AND WINDEV MOBILE

Home | Sign in | English US
  • Overview
  • How to create a Container column?
  • The different steps
  • Main control of a Container column
  • Limitations
  • Using a Container column
  • Browsing table or table on source
  • Memory table
  • Handling the controls found in the Container column
  • Limit: Unavailable control types
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Others
Stored procedures
Overview
A table cell can contain a set of controls. Several types of controls can be include in a Container column:
  • Static control,
  • Edit control,
  • Image control,
  • Button control,
  • Versions 16 and later
    WINDEV Chart control,
    New in version 16
    WINDEV Chart control,
    WINDEV Chart control,
  • Versions 16 and later
    WINDEV Table control,
    New in version 16
    WINDEV Table control,
    WINDEV Table control,
  • Versions 16 and later
    WINDEV Internal Window control,
    New in version 16
    WINDEV Internal Window control,
    WINDEV Internal Window control,
  • ...
A main control can be defined for the cell. This control will be the one used:
  • for the additions performed by programming,
  • for the sorts,
  • for the link with the data (link with an item or with a variable), ...
Versions 16 and later
WINDEV Via the internal windows, all the controls of the container column can have a different content for each row of the Table control.
New in version 16
WINDEV Via the internal windows, all the controls of the container column can have a different content for each row of the Table control.
WINDEV Via the internal windows, all the controls of the container column can have a different content for each row of the Table control.
Versions 15 and later
WINDEVJava The Container columns are available in Java.
New in version 15
WINDEVJava The Container columns are available in Java.
WINDEVJava The Container columns are available in Java.
Versions 17 and later
WINDEV The Container columns are available for the TreeView Table controls.
New in version 17
WINDEV The Container columns are available for the TreeView Table controls.
WINDEV The Container columns are available for the TreeView Table controls.
WINDEVWEBDEV - Server code The Container columns are available for the TreeView Table controls.
Versions 20 and later
WEBDEV - Server code The Container columns are available in the WEBDEV sites (in Windows and Linux).
New in version 20
WEBDEV - Server code The Container columns are available in the WEBDEV sites (in Windows and Linux).
WEBDEV - Server code The Container columns are available in the WEBDEV sites (in Windows and Linux).
How to create a Container column?

The different steps

To create a Container column:
  1. Create a table if necessary (browsing table, memory table or table on source).
  2. Create a Container column (via the popup menu of the Table control or from the description window of the Table control).
  3. Increase (if necessary) the height of the rows found in the Table control with the mouse.
  4. Position the requested controls in the Container cell of the first row found in the Table control. You can:
    • move the existing controls found in the window to the Container column.
    • drag/drop the items of the analysis displayed in the project explorer.
  5. In the description of the Container column, specify (if necessary) the main control of the column ("General" tab) and validate.

Main control of a Container column

The main control of the Container column corresponds to the control handled by default in the column. For example:
  • The sort of the Container column will be performed on the main control.
  • The searches performed in a Container column will be performed on the main control.
  • The additions, the modifications, ... performed by programming: the value of the column specified in TableAddLine for example will be assigned to the main control.
  • The exports performed from the Table control (exports to Excel, Open Office, Word, ...) will take into account the value of the main control of the column.
  • If the Container column is linked to a data file or to a variable, the control actually linked will be the main control.
The definition of a main control in a Container column is optional.

Limitations

  • WINDEV In the Container columns, the Check Box controls must be assigned with a string in the following format: "<True/False>;<True/False>;<True/False>...".
    Similarly, the value returned by these Check Box controls is a string in the following format: "<True/False>;<True/False>;<True/False>...".
  • The captions of the options found in the Radio Button and Check Box controls cannot be customized for each row in a Container column.
  • Versions 16 and later
    WINDEV To use a control with a different value for each row found in a Container column, all you have to do is include this control in an internal window and insert an Internal Window control into the column. This tip can be used for the Radio Button and Check Box controls for example, ...
    New in version 16
    WINDEV To use a control with a different value for each row found in a Container column, all you have to do is include this control in an internal window and insert an Internal Window control into the column. This tip can be used for the Radio Button and Check Box controls for example, ...
    WINDEV To use a control with a different value for each row found in a Container column, all you have to do is include this control in an internal window and insert an Internal Window control into the column. This tip can be used for the Radio Button and Check Box controls for example, ...
WINDEV Notes: Internal window, Chart control and Table control in a Container column:
  • Uncheck "Identical content for all the rows" ("GUI" tab of the control description) in order to get a different display on each row.
  • The controls of the internal window, the Chart controls and the Table controls must be filled by programming.
Using a Container column

Browsing table or table on source

A browsing Table control can contain one or more Container columns. The controls found in this Container column can display the records of the data file for example.
In this case, the Table control is linked to the data file.
Each control found in the Container column is linked to the corresponding item.
If a main control is defined on the Table control, we advise you to:
  • solution 1: keep the link between the main control and the item found in the data file. The Container column is linked to no item.
  • solution 2: link the Container column to the item associated with the main control and delete the link at control level.

Memory table

A memory Table control can contain one or more Container columns. The main control of Container column will be handled by the programming functions of memory Table control.
For example, when a row is added by TableAddLine, only the main control of the column will be assigned with the value defined by the column. If several controls must be initialized in the column, you must use the syntax described in the next paragraph. For example:
RowNum is int
RowNum = TableAddLine(TABLE_Table2, "Moore")
COL_Column1[RowNum].EDT_FirstName = "Flora"

Handling the controls found in the Container column

The controls found in a Container column can be handled via the following syntax:
<Column Name>[<Row Number>].<Control Name>
Some examples:
  • Assigning a value to a control:
    COL_Column1[RowNum].EDT_FirstName = "Flora"
  • Assigning elements to combo box of a container:
    COL_Column1[RowNum].COMBO_Combo1..Content = "Element 1" + CR + "Element 2"
  • Modifying a control property:
    COL_Column1[RowNum].PriceBT..Color = LightRed
  • Indirection on a control found in a Container column:
    sControlNameInContainerColumn is string
    sControlNameInContainerColumn = "TABLE_WithContainerCol.COL_Container[" + ...
    nRowSubscript + "].EDT_InContainerCol"
    //or
    //sControlNameInContainerColumn = "TABLE_WithContainerCol[" + ...
    // nRowSubscript + "].COL_Container.EDT_InContainerCol"

    Info({sControlNameInContainerColumn})
  • WINDEV Adding a row into a Table control found in a Container column:
    TableAddLine(TABLE_WITH_INTEGRATED_TABLE[RowNum].TABLE_In_Container, ...
    "Content_Col1", "Content_Col2")
  • WINDEV Handling a Check Box control inserted into an internal window:
    TABLE_NoName1[RowNum].IW_NoName1.CBOX_CheckBox[Subscript] = True
Note: For a browsing Table control, the controls found in a Container column should be handled in the "Row display" process.
Limit: Unavailable control types
WINDEV In a Container column, all the controls can be used, either directly, or via an internal window.
Versions 20 and later
WEBDEV - Server code In a Container column, only the following types of controls can be used:
  • Rich Text Area control,
  • Simple Static control,
  • Formatted display control,
  • Link control,
  • Button control,
  • Image control,
  • Edit control,
  • Combo Box control,
  • Radio Button control,
  • Check Box control,
  • List Box control,
  • Calendar control,
  • Rating control,
  • Slider control,
  • Bar code control (not available in the browser Table controls),
  • Social link control (not available for Ajax Table or Browser controls).
New in version 20
WEBDEV - Server code In a Container column, only the following types of controls can be used:
  • Rich Text Area control,
  • Simple Static control,
  • Formatted display control,
  • Link control,
  • Button control,
  • Image control,
  • Edit control,
  • Combo Box control,
  • Radio Button control,
  • Check Box control,
  • List Box control,
  • Calendar control,
  • Rating control,
  • Slider control,
  • Bar code control (not available in the browser Table controls),
  • Social link control (not available for Ajax Table or Browser controls).
WEBDEV - Server code In a Container column, only the following types of controls can be used:
  • Rich Text Area control,
  • Simple Static control,
  • Formatted display control,
  • Link control,
  • Button control,
  • Image control,
  • Edit control,
  • Combo Box control,
  • Radio Button control,
  • Check Box control,
  • List Box control,
  • Calendar control,
  • Rating control,
  • Slider control,
  • Bar code control (not available in the browser Table controls),
  • Social link control (not available for Ajax Table or Browser controls).
Minimum required version
  • Version 14
This page is also available for…
Comments
Click [Add] to post a comment