AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Controles, páginas y ventanas / Funciones de controles
  • Declaración de una variable de control
  • Asignación de una variable de control
  • Utilización de una variable de control en un procedimiento
  • Optimización de los procesos con indirección
  • Propiedades asociadas a una variable de Control
  • Funciones que utilizan una variable de control
WINDEV
WindowsLinuxJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac Catalyst
Otros
Procedimientos almacenados
En Control se utiliza para definir las características de un control. Este control puede ser creado dinámicamente por ControlCreate o un control en una ventana o informe.
Nota: Para obtener más información sobre la declaración de este tipo de variable y el uso de propiedades WLanguage, consulte Declarar una variable.
Ejemplo
Observaciones

Declaración de una variable de control

La siguiente sintaxis se utiliza para declarar una variable de Control:
<Variable name> is Control
Ejemplo:
c is Control
En la declaración de una variable de tipo Control, puede especificar el tipo de control utilizando la siguiente sintaxis:
<Variable name> is Control <control type = <Control type>>
donde <Control type> es la constante que corresponde al tipo de control que se va a crear (véase más abajo).
Ejemplo:
MonChamp is Control <control type = typButton>
Las siguientes constantes pueden utilizarse para definir el tipo de control:
typActiveX17ActiveX control
typOrganizer76Organizer control
typScrollbar18Scrollbar control
typAttribute41Attribute of a Looper control
typSlidingBanner122 Sliding Banner control
typNavigationBar117Navigation Bar control
typToolbar22Toolbar control
typToolbox29Sidebar control
typButton4Button control
Novedad versión 2025
typSegmentedButton
148Segmented Button control
typCalendar47Calendar control
typCaptcha82Captcha control
typMap92Map control
typCarousel37Carousel control
typStatusBarBox40002Cells of a status bar
typCell50014Cell control
typCellCSSGrid147Cell control in a CSS Grid control.
typNavigationBarCell115Cell control in a Navigation Bar control.
typCellLayout127Cell in a Layout control
typCelluleFlexBox139Cell of a FlexBox control.
typCellPageLayout84Cell control used for the Zoning layout.
typFormattedControl50001Formatted display control
typHTMLControl50002HTML control
typMenuControl50007Menu of a WEBDEV page
typContextMenuControl141Context menu in a WEBDEV page
typBreadcrumb50011Breadcrumb control
typClick30001Clickable Image control (Image control with the "This image is a clickable area" option).
typBarCode26Bar Code control
typColumn56Table column
typComboWE10001Editable Combo Box control
typComboNE10002Non-editable Combo Box control
typWebComponent121Web Component control
typConference25Conference control
typNativeContainer125Native Container control
typCube38Cube control
typDate20002Date Edit control
typLayout126Layout control
typDuration20006Duration Edit control
typDiagramEditor130Diagram Editor control
typCodeEditor146Code Editor control
typHtmlEditor134HTML Editor control
typImageEditor124Image Editor control
typMobileImageEditor138Mobile Image Editor control
Windows
Not available.
typWin1Window
typInternalWindow31Internal Window
typWire118Wire control
typFlash50008Flash control
typFlex48Flex control
typFlexbox139Flexbox control
typShape20Shape/Drawing control
typGantt110Gantt Chart column (Table or TreeView Table control).
typChart33Chart control in a window or page
typGrp58Group of controls
typTime20003Time Edit control
typHTML23HTML static
typIFrame50013IFrame control
typImage8Image control
typCheckBox5Check Box control
typSwitch132Switch control
typProgressBar10Progress Bar control
typInfiniteProgressBar113Infinite Progress Bar control
typJava50004Java control
typKanban140Kanban control
typPDFReaderPDF Reader control
typStatic3Static Text control
typHTMLStatic50006HTML Static control
typLink50005Link control
typSocialLink103Social Network control
typHorizontalRule50003Line control
typList7List Box control
typListView27ListView control
typKanbanList142Kanban List control
typMapArea50010Clickable Image control
typControlTemplate43Control Template control.
typCurrency20005Currency Edit control
typMultimedia39Multimedia control
typRating85Rating control
typRepositionableNote119Repositionable Note control
typNum20004Numeric Edit control
typOle15OLE control
typTab16Tab control
typSwitchOption133Option of a Switch control
typMenuOption40001Menu option
typOrganizationChart86Organization Chart control
typPage1Page
typPeelingCorner79Peeling Corner control
typInternalPage31Internal page
typPanel131Dockable Panel control
typSlidingBannerPlane123Plane associated with a Sliding Banner control
typSiteMap45Site Map control
typScheduler80Scheduler
typPopup90Popup page
typSlider12Slider control
typRangeSlider72Range Slider
typRotativeSlider13Round Slider
typRangeSlider72Range Slider control
typPager50009Pager control
typRibbonGroupRibbon group
typRibbon87Ribbon control
typBreakBreak in a Looper control
typRadioButton6Radio Button control
typSplitter28Splitter control
typSilverlight46SilverLight control
typSpin11Spin control
typSuperControl40Supercontrol
typTable9Table control
typPivotTable102Pivot Table control
typDashboard111Dashboard control
typTreeviewTable35TreeView Table control
typSpreadsheet114Spreadsheet control
typText20001Text Edit control
typDrawer34Drawer control
typWordProcessing120Word Processing control
typTreeMap74TreeMap control
typTreeView19TreeView control
typUpload73Upload control
typVideo78Video control
typThumbnail50012Thumbnail control
typWebCam24Web Camera control
typXaml36Xaml control
typMultilineZone97Multiline Zone control
Windows
Not available.
typLooper30Looper control
typLinearLooper77Linear Looper control
typRichTextArea109Text Area control
Nota: Para dejar de asociar un control a una variable de tipo Control, basta con utilizar VariableReset.

Asignación de una variable de control

A Control puede utilizarse para controlar:
  • un control en una ventana o en un informe.
La asignación de una variable de Control debe realizarse mediante el operador '<-'.
Ejemplos:
// Affectation avec un champ existant
c is Control
c <- SAI_Saisie1
// Affectation en utilisant l'indirection
// La variable référence le champ SAI_SAISIE2
c <- {"SAI_SAISIE2"}
Precaución: El operador '=' no debe utilizarse para asignar un valor a una variable de tipo Control. Este operador se utiliza para transferir el valor de un control a otro control del mismo tipo. Por ejemplo:
// Affectation avec un champ existant
c is Control
c <- SAI_Saisie1

// Modification de la valeur 
c = SAI_Saisie3 // Code équivalent : SAI_Saisie1.Valeur = SAI_Saisie3.Valeur
c = "Texte" // Code équivalent : SAI_Saisie1.Valeur = "Texte"
Nota: Para determinar si se ha asignado un valor a una variable de tipo Controlutilice la propiedad Tipo de la variable. Ejemplo:
PROCEDURE VariableChampEstAffecté(varChamp is Control) : boolean
// But :  vérifier si un champ a bien été affecté à une variable de type Champ 
sType is int
WHEN EXCEPTION IN
	sType = varChamp..Type
DO
	RETURN False
END
RETURN True

Utilización de una variable de control en un procedimiento

En Control puede ser un parámetro de un procedimiento.
Método 1: Sintaxis sin el tipo del control:
  • código de procedimiento:
    PROCEDURE MaProcédure(C is Control)
    C = "Il est " + TimeSys()
  • llamada al procedimiento:
    MaProcédure(SAI_Saisie1)
En este caso, el tipo del control no se comprueba en tiempo de compilación.
Método 2: Sintaxis con el tipo de control:
  • código de procedimiento:
    PROCEDURE MaProcédure(C is Control <control type = typSaisie>)
    C = "Il est " + TimeSys()
  • llamada al procedimiento:
    MaProcédure(SAI_Saisie1)
Ventaja: Si la llamada al procedimiento utiliza un control de un tipo inesperado, se muestra un error de compilación: "El tipo de control pasado como parámetro no es compatible con el tipo esperado"

Optimización de los procesos con indirección

En Control puede utilizarse para optimizar los procesos que utilizan las indirecciones. Puedes escribir, por ejemplo:
C is Champ <-{s, indControl}
C.Largeur = 10
C.Hauteur = 20
en lugar del siguiente código:
{s, indControl}..Width = 10
{s, indControl}..Height = 20

Propiedades asociadas a una variable de Control

En Control se utiliza para manipular todos los tipos de controles que se encuentran en una ventana o en un informe. Las propiedades disponibles dependen del tipo de control utilizado.
Por ejemplo, si una variable de tipo Control se utiliza para manipular un control Campo de entrada, todas las propiedades WLanguage del control Campo de entrada estarán disponibles para esa variable. Especificando el tipo de control al declarar la función Control sólo se sugerirán las propiedades de ese tipo en el editor de código.
Para obtener más información sobre las propiedades de un control, vaya a la página correspondiente y haga clic en "Ver también". Para obtener más información, consulte Controles de ventana.

Funciones que utilizan una variable de control

Todas las funciones WLanguage que manipulan controles pueden utilizarse en una variable de tipo Control. Sin embargo, sólo estarán disponibles las funciones WLanguage correspondientes al tipo de control utilizado. Especificando el tipo de control al declarar la función Control sólo se sugerirán las funciones de ese tipo en el editor de código.
Por ejemplo, si una variable de tipo Control se utiliza para manipular un control Tabla, todas las funciones TableXXX estarán disponibles para esa variable.
New in SaaS
Nota: ControlExist puede utilizarse en una variable de tipo Control para comprobar si existe un control determinado.
Nota: Esta función sólo está disponible en WINDEV Suite SaaS 2025 - Actualización 3.
Para obtener más información, consulte Utilizar las novedades exclusivas de WINDEV Suite SaaS 2025.
Versión mínima requerida
  • Versión 19
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 25/06/2025

Señalar un error o enviar una sugerencia | Ayuda local