Usina BRGuía AdvPL
Ingresar
← Todos los temas
FUNDAMENTOPublicado

Componentes visuales en AdvPL

DEFINE ... · @ ... SAY · @ ... GET · @ ... BUTTON · ACTIVATE ...

Comprende cómo los comandos visuales ofrecen una sintaxis legible para instanciar y configurar clases de interfaz.

Interfaz visualComponentesComandosClasesDiálogos
01 · DESCRIPCIÓN GENERAL

Descripción general

Los comandos de componentes visuales de AdvPL permiten utilizar clases de interfaz mediante instrucciones más sencillas. Durante la compilación, se traducen en llamadas a constructores y métodos de las clases correspondientes. Palabras clave como FROM, TO, SIZE, OF y ACTION facilitan reconocer los parámetros y mejoran la lectura y el mantenimiento.

02 · SINTAXIS

Sintaxis

DEFINE ... · @ ... SAY · @ ... GET · @ ... BUTTON · ACTIVATE ...
03 · EJEMPLO PRÁCTICO

Diálogo simple con SAY, GET y BUTTON

#Include "TOTVS.ch"

User Function ExVisual()
    Local oDlg
    Local cNombre := Space(40)

    Define MsDialog oDlg Title "Registro rápido" ;
        From 0, 0 To 150, 360 Pixel

    @ 20, 20 Say "Nombre:" Size 40, 10 Of oDlg Pixel
    @ 18, 65 Get cNombre Size 110, 10 Of oDlg Pixel
    @ 50, 65 Button "Confirmar" Size 55, 14 ;
        Action MsgInfo("Hola, " + AllTrim(cNombre)) Of oDlg Pixel

    Activate MsDialog oDlg Centered
Return
Resultado esperado

El diálogo es el contenedor. SAY muestra una etiqueta, GET edita la variable y BUTTON ejecuta un bloque de acción.

04 · EJEMPLO PRÁCTICO

Evento delegado a una función

#Include "TOTVS.ch"

User Function ExAcaoVisual()
    Local oDlg

    Define MsDialog oDlg Title "Processamento" ;
        From 0, 0 To 120, 300 Pixel

    @ 35, 85 Button "Executar" Size 55, 14 ;
        Action ProcessarPedido() Of oDlg Pixel

    Activate MsDialog oDlg Centered
Return

Static Function ProcessarPedido()
    MsgInfo("Processamento iniciado")
Return
Resultado esperado

El bloque ACTION queda corto y delega la regla a una función, mejorando la lectura y las pruebas.

05 · EJEMPLO PRÁCTICO

Responsabilidades del comando y de la clase

// Forma declarativa por comando:
@ 20, 20 Say "Cliente:" Size 45, 10 Of oDlg Pixel

// Na compilação, o comando é convertido em chamadas
// da classe visual correspondente. A implementação
// exata depende do componente e da versão da LIB.
Resultado esperado

La sintaxis con palabras clave aclara la intención del fuente y la clase aporta el comportamiento real.

BUENAS PRÁCTICAS
  • La sintaxis de comandos es una capa proporcionada por el compilador; durante la ejecución, las clases visuales realizan el comportamiento.
  • Utiliza OF para identificar explícitamente el diálogo o contenedor propietario del componente.
  • Organiza la creación, configuración y activación de la interfaz en un orden claro.
  • Los bloques de código se utilizan frecuentemente en ACTION, VALID, WHEN y otros eventos.
  • Consulta la documentación del comando o clase para confirmar parámetros, includes y disponibilidad en la LIB utilizada.
ERRORES COMUNES
  • No mezcles coordenadas PIXEL con otras unidades sin comprobar la convención del contenedor.
  • Un componente sin la asociación correcta con el diálogo puede no aparecer o tener un ciclo de vida inesperado.
  • Los bloques de eventos extensos dificultan el mantenimiento y la depuración; llama a una función dedicada.
  • La equivalencia entre comando y clase no implica que todas las opciones de la clase estén expuestas por el comando.
  • Las interfaces históricas pueden depender de SmartClient y del contexto de la rutina; confirma la compatibilidad con el entorno y el tipo de ejecución.

Contenido relacionado

REFERENCIAS
  1. TOTVS. Componentes Visuales. TDN. Creado por Julio Wittwer; última modificación el 27 de mayo de 2019.
  2. Guía de referencia de eADVPL. Sin autor identificado, creada el 28 de julio de 2005. Sección relacionada: p. 11–25. Referencia histórica; sintaxis verificada prioritariamente con una fuente actual.
Estado
Publicado
Página creada el
Última revisión el
Idioma original
Portugués
Revisión
Usina.BR