AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Ayuda / Desarrollar una aplicación o un sitio web / Controles, ventanas y páginas / Controles: tipos disponibles / Control Cuadro de mando
  • Presentación
  • Manipular controles Cuadro de mando mediante programación
  • Agregar un widget
  • Ejecutar un procedimiento definido para una ventana o página interna (utilizada como widget)
  • Manipular un widget mediante programación
  • Arrastrar y soltar widgets en un control Cuadro de mando
  • Propiedades específicas de los controles Cuadro de mando
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Presentación
Para manipular controles Cuadro de mando mediante programación, WINDEV, WEBDEV y WINDEV Mobile incluyen funciones específicas de los Cuadros de mando.
Esta página de ayuda explica cómo manipular controles Cuadro de mando mediante programación.
Linux Observación: Los controles Cuadro de mando solo están disponibles en sitios WEBDEV Linux. Los controles Cuadro de mando no están disponibles en aplicaciones WINDEV para Linux.
Manipular controles Cuadro de mando mediante programación

Agregar un widget

Los widget pueden agregarse a los controles Cuadro de mando con la función DashAddWidget. De forma predeterminada, los widgets son invisibles. Se pueden mostrar utilizando la propiedad Visible. Si el widget no es visible, el usuario puede hacerlo visible a través del menú contextual del modo de edición.
Ejemplos:
  • Agregar un widget simple (sin parámetros):
    // Adds a simple widget
    nIndex = DashAddWidget(DASH_Dashboard, IW_Widget_StockAlert, ...
    "Stock alert")
  • Agregar un widget con parámetros:
    nIndex is int
     
    // Adds a widget that expects parameters
    nIndex = DashAddWidget(DASH_Dashboard, IW_Widget_Clock, ...
    "Clock" + COMBO_AddWidget[COMBO_AddWidget].DisplayedValue, ...
    COMBO_AddWidget[COMBO_AddWidget].DisplayedValue)
     
    // Displays this widget upon request
    IF YesNo(Yes, "Do you want to display this widget?") = Yes THEN
    DASH_Dashboard[nIndex].Visible = True
    ELSE
    ToastDisplay("Widget added to the dashboard as ""hidden"". "+ ...
    "Switch to edit mode to add it", toastShort, vaMiddle, haCenter)
    END
Caso especial: agregar un widget a la configuración inicial
De forma predeterminada, el control Cuadro de mando muestra los widgets tal y como se definieron en el editor de ventanas o páginas.
Para agregar widgets mediante programación cuando se carga el control Cuadro de mando, utilice:
Atención: En este caso, estas funciones deben utilizarse en el evento "Inicialización" del control Cuadro de mando.
Ejemplos:
  • Agregar un widget simple (sin parámetros)
    // -- Initialize the DASH_Dashboard control
    // - stock alert
    // Adds the widget
    nIndex = DashAddWidget(MySelf, IW_Widget_StockAlert, "Stock alert")
    // Configures the widget (placed on the left)
    DashInitialConfiguration(MySelf, nIndex, 5, 1)
  • Agregar un widget con parámetros
    // -- Initialize the DASH_Dashboard control
     
    dDate is Date
    nIndex is int
    nX, nY are int
     
    // Adds information to the initial configuration:
    // - key numbers for the last 3 months
    nX = 1 ; nY = 3
    FOR i = 1 TO 3
    // Adds the widget
    nIndex = DashAddWidget(MySelf, IW_Widget_KeyNumber, ...
    StringBuild("Key numbers for %1", ...
    DateToString(dDate, "Mmm YYYY")), dDate)
    // Configures the widget (placed on the left)
    DashInitialConfiguration(MySelf, nIndex, nX, nY)
    // The next one will be lower
    nY++
    dDate.Month--
    END
Observación: Para actualizar un widget con parámetros, se recomienda:
  • Agregar un evento opcional para actualizar el widget en los eventos de la ventana o página interna.
  • Introducir el código utilizado para actualizar el widget. Este código puede utilizarse, por ejemplo, para actualizar los elementos que se muestran en la ventana o página interna.
  • Actualizar el widget con la función DashDisplay.

Ejecutar un procedimiento definido para una ventana o página interna (utilizada como widget)

Para ejecutar un procedimiento definido en la ventana o página interna utilizada como widget, utilice las siguientes sintaxis:
  • Sintaxis que utiliza el nombre de la ventana o página interna:
    NameInternalWindow.ProcedureName(Param1, Param2, ...)

    Por ejemplo:
    IW_Widget_KeyNumber.NewDate(EDT_Date)
  • Sintaxis que utiliza una variable de tipo Control (si se utiliza la misma ventana o página interna varias veces en el control Cuadro de mando):
    VariableName is Control <- DashboardName[WidgetIndex]
    VariableName.ProcedureName(Param1, Param2, ...)

    Por ejemplo:
    X is Control <-DASH_Dashboard[4]
    X.NewDate(EDT_Date)
Manipular un widget mediante programación
Para manipular un widget mediante programación, utilice una de las siguientes sintaxis:
  • Sintaxis 1: Uso directo del control Cuadro de mando:
    DashboardName[WidgetIndex]

    Por ejemplo:
    Trace(DASH_MyDashboard[1].Caption)
  • Sintaxis 2: Uso de una variable de tipo Control :
    VariableName is Control <- DashboardName[WidgetIndex]

    Por ejemplo:
    X is Control <-DASH_Dashboard[4]
    Trace(X.Caption)
Las propiedades que se pueden utilizar en los widgets son las mismas que se pueden utilizar en las ventanas o páginas internas. Para obtener más información, consulte Propiedades asociadas a las ventanas internas y Propiedades asociadas a las páginas internas.
Arrastrar y soltar widgets en un control Cuadro de mando
WINDEV WINDEV permite arrastrar y soltar controles Imagen, List Box y Looper (entre otros) en un control Cuadro de mando.
Las etapas son las siguientes:
  1. Declarar que el control Cuadro de mando es el destino del arrastre.
    Esta declaración se realiza en el código de inicialización del control con la propiedad DndTarget.
    Ejemplo:
    // -- Initialize DASH_Dashboard
    // Allows drag-and-drop operations
    MySelf.DndTarget = dndAuto
  2. Declarar que el control Cuadro de mando es el origen del arrastre.
    En el código de inicialización del control de origen, declare que el control es el origen del arrastre con la propiedad DndSource.
    Ejemplo:
    // The image is the drag source
    MySelf.DndSource = dndProgram
  3. Definir el procedimiento para iniciar la operación de arrastre (por ejemplo, en el código de inicialización del control de origen).
    Ejemplo:
    // Defines the drag start procedure
    // This procedure uses DnDCacheDashElement
    // to define the widget to drop
    DnDEvent(onDndBegin, MySelf, dndBeginDrag)
  4. Escriba el código del procedimiento.
    Ejemplo:
    PROCEDURE onDndBegin()
     
    // Define the widget to drop according to the source control
    SWITCH _DND.SourceControl
    // Indicates that the drop on the Dashboard control
    // must add the "Clock" widget
    // by using the "IW_Widget_Clock" internal window
    CASE IMG_Widget_Calendar.Name
    DnDCacheDashElement(IW_Widget_Calendar, "Clock")
     
    OTHER CASE
    Error("Only the IMG_Widget_Calendar image" + ...
    "is allowed for Drag and Drop")
    END
Propiedades específicas de los controles Cuadro de mando
Utilice las siguientes propiedades para manipular los controles Cuadro de mando mediante programación.
CompactOptionLa propiedad CompactOption permite:
  • determinar si las opciones de un control Casilla de verificación, Botón de opción o Cuadro de mando están compactadas.
  • definir si las opciones de un control Casilla de verificación, Botón de opción o Cuadro de mando deben compactarse.
ElementHeightLa propiedad ElementHeight permite:
  • Descubra o modifique la altura de los elementos de un control Organigrama.
  • Descubre o modifica la altura de las celdas de un control Cuadro de mando.
ElementWidthLa propiedad ElementWidth permite:
  • Descubra o modifique la anchura de los elementos de un control Organigrama.
  • Descubre o modifica el ancho de las celdas de un control Cuadro de mando.
MarginHeightEl MarginHeight Property se utiliza para:
  • Averigua el margen vertical entre los widgets que se encuentran en un control Cuadro de mando.
  • Modificar el margen vertical entre los widgets que se encuentran en un control Cuadro de mando.
MarginWidthEl MarginWidth Property se utiliza para:
  • Descubre el margen horizontal entre los widgets que se encuentran en un control Cuadro de mando.
  • Modifica el margen horizontal entre los widgets que se encuentran en un control Cuadro de mando.
Para obtener la lista completa de las propiedades WLanguage que pueden utilizarse con los controles Cuadro de mando, consulte Propiedades del control Cuadro de mando.
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: 29/08/2023

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