Documentación de Velneo
25
25
  • Introducción
  • Velneo
    • ¿Qué es velneo?
    • Requerimientos de Velneo
    • Notas de la versión
    • Funcionalidades comunes a los componentes de Velneo
      • Instalación
      • Conexión con Velneo vServer
      • Cambiar el estilo de visualización
      • Ver u ocultar barras de herramientas
      • Mensajería interna entre usuarios
      • Soporte de alta resolución (HighDPI)
      • Carpetas de trabajo de los componentes de Velneo
      • Numeración de versiones de Velneo
      • Certificado de firma digital para componentes de Windows
    • Tipos de archivo generados por Velneo
  • Velneo vDevelop
    • ¿Qué es Velneo vDevelop?
    • Interfaz de Velneo vDevelop
    • Lista de teclas aceleradoras de Velneo vDevelop
    • Soluciones y proyectos
    • Control y edición de proyectos
    • Herencia
    • Inspectores
    • Proyectos objetos y editores
      • Objeto
      • De proyecto de datos
        • Indice complejo
        • Tabla
          • Actualización
          • Campo
          • Enlace
          • Indice
          • Plural
          • Traspaso de campo
          • Trigger
        • Tabla estática
        • Variable
      • De proyecto de aplicación
        • Acción
        • Alternador de lista
        • Arbol visor de tablas
        • Bloc de formularios
        • Casillero
        • Cesta
        • ComboView
        • Control SVG
        • Dispositivo serie
        • Formulario
          • Controles de visualización
            • Texto estático
            • Nombre de campo
            • Visor HTML
            • Dibujo
            • Imagen SVG
            • Caja de grupo
            • Menú arbolado
            • Barra de progreso
            • Reloj
            • Manómetro
            • Termómetro
          • Controles de edición
            • Caja de texto
            • Caja de texto enriquecido
            • Data catcher edit
            • Edición alfabética
            • Edición fecha
            • Edición fecha/hora
            • Edición fórmula
            • Edición hora
            • Edición numérica
            • Edición senda fichero
            • Edición senda directorio
            • Objeto dibujo
          • Controles de entrada
            • Botón
            • Botón de check
            • Botón de radio
            • Calendario
            • ComboBox
            • Deslizador
            • Dial
            • ListBox
            • Rueda
          • Contenedores
            • Área de scroll
            • Caja de formularios
            • Pila de formularios
            • Separador de formularios
            • Splitter
            • Vista de datos
          • Layout
          • Tree widget
          • Controles SVG
          • Fichas de extensión
        • Formulario QML
        • Gráfico
        • Imagen SVG
        • Impresora lógica
        • Informe
          • Editor de informes
          • Agrupamiento
          • Sección
          • Cálculo
        • Informe personalizable
          • Diseñando un informe personalizable básico
          • Diseño avanzado
          • Diseñando un informe personalizable
          • Añadiendo orígenes de datos
          • Añadiendo elementos al informe
          • Características avanzadas
          • Etiquetas
          • Asistente de scripts
          • Impresión de gráficos
          • Opciones html
        • ListView
        • Lista QML
        • Localizador
        • Marco
        • Menú
        • Multivista
        • Protocolo TCP-IP
        • Rejilla
          • Propiedades de columna
        • Rejilla avanzada
        • Toolbar
        • ViewFlow
        • Sub-objetos de vistas de datos
          • Conexión de evento
          • Drop
          • Inserción
          • Manejador de evento
      • Comunes a proyecto de datos y de aplicación
        • Búsqueda
        • Cola
        • Constante
        • Dibujo
        • Esquema de tablas
        • Fichero adjunto
        • Función
        • Librería externa
        • Lupa
        • Proceso
          • Comandos de base de datos
            • API
            • Bases de datos externas
            • Búsquedas
            • Campos (grupo de comandos)
            • Cestas
            • Fichas
            • Fichas seleccionadas
            • Listas
            • Tablas
            • Tubos
          • Básicos
            • Controles de flujo
            • Debug
            • Ejecución
            • Salida/retornos
            • Scripts (grupo de comandos)
            • Transacciones (comandos)
            • Variables
          • Comunicación
            • Internet
            • Protocolo TCP
            • Puerto serie
            • SDV
          • Interfaz
            • Acciones (comandos)
            • Control
            • Diálogos
            • Formularios - comandos
            • Localizadores
            • Objeto - grupo de comandos
            • Ventana principal
            • Vista de datos - comandos
          • Sistema
            • Comandos de Sistema
            • Configuración
            • Directorios
            • Ficheros
        • Tubo de ficha
        • Tubo de lista
        • Variable local
      • Editores
        • Asistente de fórmulas
          • Operadores
          • Funciones estándar
            • Funciones API
            • Funciones básicas
            • Funciones de cadenas
              • Expresiones regulares
            • Funciones científicas
            • Funciones de Cliente-servidor
            • Funciones de color
            • Funciones de códigos
            • Funciones de directorios
            • Funciones de fechas
            • Funciones de ficha en curso
            • Funciones de horas
            • Funciones de Internet
            • Funciones de juegos de caracteres
              • Codecs
            • Funciones numéricas
            • Funciones de sistema
            • Funciones de tiempo
            • Funciones trigonométricas
          • Funciones de dll
          • Funciones de proceso
          • Funciones de campo
          • Campos
          • Constantes
          • Variables globales
          • Variables locales
          • Variables del sistema
          • Verificador de fórmulas
          • Conversión automática de datos
          • Introducción de datos literales
          • Secuencias de escape en cadenas de caracteres
          • Composición de sendas en fórmulas
        • Editor de imágenes
        • Selector de fuentes
    • Scripts
      • Lenguajes
        • JavaScript
          • Procesos JavaScript
          • Fórmulas JavaScript
          • Clases
            • Funciones globales
            • Objetos
            • VAbstractBrowser
            • VAbstractDataView
            • VAbstractListDataView
            • VAdvandedGridListDataView
            • VAlternatorListDataView
            • VApp
            • VBoundFieldComboBox
            • VBoundFieldEdit
            • VBoundFieldEditBrowser
            • VBoundFieldListBox
            • VByteArray
            • VCheckBox
            • VClipboard
            • VClockWidget
            • VComboBox
            • VComboListDataView
            • VCoverFlowListDataView
            • VCWebView
            • VDataCatcherEdit
            • VDataCatcherEditBrowser
            • VDataViewDialog
            • VDateEdit
            • VDateEditBrowser
            • VDateTimeEdit
            • VDateTimeEditBrowser
            • VDial
            • VDir
            • VExtension
            • VFile
            • VFileInfo
            • VFilePathEditBrowser
            • VFinder
            • VFont
            • VFormBlockListDataView
            • VFormDataView
            • VFormulaEditBrowser
            • VGaugeWidget
            • VGridListDataView
            • VGroupBox
            • VImage
            • VImageEdit
            • VImageWidget
            • VInstancesList
            • VInstance
            • VInstances
            • VItemRegisterPattern
            • VLabel
            • VLineEdit
            • VLineEditBrowser
            • VListBox
            • VListDataView
            • VLogin
            • VMainWindow
            • VMdiView
            • VMimeData
            • VMultiDataView
            • VNumberSpinBox
            • VNumberSpinBoxBrowser
            • VObjectInfo
            • VObjectInstance
            • VProcess
            • VProgressBar
            • VProjectInfo
            • VPushButton
            • VQmlFormDataView
            • VQmlListDataView
            • VQmlListModel
            • VQuery
            • VRadioButton
            • VRegister
            • VRegisterList
            • VReportListDataView
            • VRequest
            • VResponse
            • VRoot
            • VScreen
            • VScrollArea
            • VServerAdmin
            • VSettings
            • VSlider
            • VSlotListDataView
            • VSolutionInfo
            • VSplitter
            • VSqlDatabase
            • VSSLCertificate
            • VSSLInfo
            • VSSLSessionCipher
            • VStackedWidget
            • VSvgButton
            • VSvgSlideSwitch
            • VSvgToggleSwitch
            • VSvgWidget
            • VSysInfo
            • VTableInfo
            • VTabWidget
            • VTextEdit
            • VTextFile
            • VThermometerWidget
            • VThumbWheel
            • VTimeEdit
            • VTimeEditBrowser
            • VToolBox
            • VTreeItem
            • VTreeItemRegister
            • VTreeListDataView
            • VTreeMenu
            • VTreeMultiTableListDataView
            • VTreeWidget
            • VUser
            • VUserGroup
            • VUserGroupList
            • VUserList
            • VXmlReader
            • VXmlWriter
            • Widget
            • XMLHttpRequest
        • QML
          • Tipos QML
          • Funciones específicas de QML
    • Depuración
      • Depuración de procesos de Velneo
      • Depuración de procesos JavaScript
      • Monitor de vClient
    • Extensiones de Velneo vDevelop
    • Acceso directo a una solución desde vDevelop
    • Buenas prácticas
      • Buenas prácticas de organización
        • Proyectos
        • Organización de carpetas
        • Proyecto de datos
        • Proyecto de aplicación
      • Buenas prácticas de codificación
        • Identificadores
        • Teclas aceleradoras
        • Documenta
        • Diseña los formularios como si no existiesen los layouts
      • Buenas prácticas de rendimiento
        • Arquitectura
          • Listas de registros
          • Lista de resultados de una búsqueda
          • Las cestas
          • Las variables globales
          • La caché de fichas
          • Programa en cloud
        • Base de datos
          • Campos
          • Indices
          • Actualizaciones
          • Eventos de tabla o triggers
          • Variables globales y constantes
          • Tablas en memoria vs tablas en disco
          • Optimizar migraciones de datos
          • Búsquedas en el servidor ¿Cuándo y Cómo?
          • Campos fórmula vs campos en disco
          • Indices condicionados vs búsquedas complejas
          • ¿Cuándo usar tablas de extensión?
          • Indices de trozos y palabras
          • ¿Cuándo usar cada tipo de campo alfa?
        • Formularios
          • Condiciones de visible y activo
          • Carga de subformularios en pestaña, caja o pila
        • Procesos y funciones y eventos
          • 1º, 2º, 3º y 4º plano ¿Cuándo usar cada uno?
          • Bloqueo blando vs bloqueo duro
          • Pasar información del cliente al servidor
          • ¿Cómo optimizar transacciones grandes?
          • ¿Cómo gestionar las transacciones?
          • Grabaciones optimizadas para el usuario
        • Carga de registros en objetos de lista
          • Rejillas
            • Campos punteros a singular
            • Totales
            • Condiciones de activo, visible y color en columna
            • Campos de tipo objeto
        • Conoce los límites
      • Imágenes
      • Buenas prácticas para el desarrollo en equipo
    • Análisis de bases de datos para aplicaciones de Velneo
      • Un centro de enseñanza
      • Facturas de un cliente
      • Repartos de obras de teatro
      • Galería de arte
      • Gestión de un colegio
      • Instalación de lunas para vehículos
      • Libros y autores
      • Tienda de discos
      • Últimos pedidos de un proveedor
      • Existencias por almacén y precios por cliente
      • Generación de tickets para un quiosco
      • Navegación por facturas
  • Velneo vAdmin
    • ¿Qué es Velneo vAdmin?
    • Gestión de usuarios
    • Gestión de aplicaciones
      • Soluciones
      • Instancias
      • Disco
    • Monitorización
      • Lista de comandos
    • Tareas
    • Acceso directo
  • Velneo vClient
    • ¿Qué es Velneo vClient?
    • Movilidad
    • Funcionalidades de Velneo vClient
      • Accesos directos y VRL
      • Cambiar idioma
      • Panel de procesos en 2º plano
      • Manejo de rejillas
      • Uso de la rejilla avanzada
      • Manejo de cestas
      • Refrescos
      • Caché local
      • Edición de campos enlazados a maestro
      • Edición de campos de tipo fecha
      • Capturar imagen desde una cámara
      • Asignar impresoras lógicas
      • Actualización automática
      • Personalización de la ventana de conexión de Velneo vClient
      • Instalador personalizado de Velneo vClient
      • Ordenación de listas
  • Velneo vServer
    • ¿Qué es Velneo vServer?
    • Instalación y configuración
      • Activación de la licencia
      • Línea de comandos de Velneo vServer
      • Parámetros configurables de Velneo vServer
      • Estructura de directorios
    • Iniciar Velneo vServer
    • Funcionalidades
      • Protocolo VATP
      • Protocolo VATPS
      • Multi-hilo
      • Integridad referencial
      • Refrescos terciarios
      • Sistema transaccional
      • Sistema de bloqueos
      • Tecnología bigkey
      • Hilo de control
    • vPacker
  • Velneo vInstallBuilder
    • ¿Qué es Velneo vInstallBuilder?
    • Configurar una instalación
    • Probar una instalación
    • Crear el instalable
    • Accesos directos
  • Velneo vModApache
    • ¿Qué es Velneo vModApache?
    • Instalación y configuración
    • Nomenclatura de objetos en urls
    • Uso de ficheros adjuntos
    • Caché local de Velneo vModApache
  • Velneo vDataClient
    • ¿Qué es Velneo vDataClient?
    • Iniciar Velneo vDataClient
    • Interfaz de Velneo vDataClient
    • Procesos
    • Utilidades
    • Acceso directo a una instancia de datos
  • Velneo vTranslator
    • ¿Qué es Velneo vTranslator?
    • Importación y exportación basada en XLIFF
    • Acceso directo a una solución
  • Velneo ODBC Driver
    • ¿Qué es velneo ODBC Driver?
    • Referencia de comandos SQL
  • Velneo vVersion
    • ¿Qué es Velneo vVersion?
  • Velneo vERP
    • ¿Qué es Velneo vERP?
    • Manual del programador
    • Documentación del ApiRest
    • Novedades de la versión
  • Velneo vTutor
    • ¿Qué es vTutor?
    • Tutores de objetos básicos
      • Tutor de árboles visores de tablas arboladas
      • Tutor de búsquedas
      • Tutor de cestas
      • Tutor de formularios
      • Tutor de informes
      • Tutor de localizador básico
      • Tutor de marcos
      • Tutor de rejillas
      • Tutor de rejillas avanzadas
    • Tutores de objetos avanzados
      • Tutor de alternadores de lista
      • Tutor de comboview
      • Tutor de drag and drop
      • Tutor de eventos
      • Tutor de grabación de fichas
      • Tutor de gráficos
      • Tutor de impresión de informes
      • Tutor de lupas
      • Tutor de protocolo TCP/IP
    • Tutores de controles
      • Tutor de botones de menú
      • Tutor de controles SVG
      • Tutor de edición numérica
      • Tutor de visor html dinámico
      • Tutor de vistas de datos de lista
    • Tutores de procesos y manejadores de evento avanzados
      • Tutor de comandos de interfaz y acciones
      • Tutor de importación y exportación de ficheros ASCII
      • Tutor de portapapeles
      • Tutor de procesos
      • Tutor de SDV
    • Tutores de scripts
      • QML: hola mundo
      • QML: tutor básico
      • QML: tutor de vistas
      • Tutor de XMLHttpRequest (webServices)
  • Velneo cloud
    • ¿Qué es Velneo Cloud?
    • Panel de control vServer cloud
      • URC
      • vServer
      • Apache
      • SFTP
      • Usuarios
    • Copias de seguridad
    • Velneo cloud API
      • Uso de Velneo cloud API
    • Explorador de archivos cloud sFTP
    • TCP en Velneo cloud
    • Velneo vModApache en cloud
    • SLA
    • Hora de los servidores en el cloud de Velneo
    • ¿Qué puedo hacer si tengo una incidencia en mi servidor cloud?
Con tecnología de GitBook
En esta página
  • Contenido
  • Control
  • Interfaz: ¿está activado el subcontrol del contenedor de formularios?
  • Interfaz: ¿está habilitado el subcontrol del contenedor de formularios?
  • Interfaz: ¿está habilitado?
  • Interfaz: ¿está visible?
  • Interfaz: ¿tiene foco?
  • Interfaz: activar subcontrol del contenedor de formularios
  • Interfaz: deshabilitar
  • Interfaz: establecer foco
  • Interfaz: establecer fuente
  • Interfaz: establecer hoja de estilo CSS
  • Interfaz: establecer hoja de estilo filescript
  • Interfaz: establecer paleta
  • Interfaz: habilitar
  • Interfaz: habilitar el subcontrol del contenedor de formularios
  • Interfaz: mostrar
  • Interfaz: ocultar
  • Interfaz: quitar foco

¿Te fue útil?

  1. Velneo vDevelop
  2. Proyectos objetos y editores
  3. Comunes a proyecto de datos y de aplicación
  4. Proceso
  5. Interfaz

Control

Última actualización hace 4 años

¿Te fue útil?

Contenido

Control

Interfaz: ¿está activado el subcontrol del contenedor de formularios?

Comando de instrucción del grupo Interfaz para separador de formularios, caja de formularios y pila de formularios. Permite conocer si está activo un subformulario concreto de los mismos.

Este comando, al igual que el resto de los comandos de interfaz, solamente puede ser usado en manejador eventos.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista de los subobjetos de tipo separador, caja y pila de formularios declarados en el formulario. Seleccionar el objeto a evaluar

Identificador de subcontrol de formulario

Este parámetro desplegará la lista de los subformularios declarados en el control seleccionado en el parámetro anterior. Seleccionar el que se desea evaluar.

Identificador de variable local booleana de retorno de ok

Variable local.

Funcionalidad

Este comando de instrucción permite conocer si está activo o no un subformulario concreto de un control de tipo separador, caja o pila de formularios incrustado en un formulario.

Comentarios

Este comando solamente puede ser usado en manejadores de eventos.

Este comando solamente permite actuar sobre sub-controles del formulario en curso; no siendo posible, por tanto, actuar sobre sub-controles de los formularios incluidos dentro de éstos.

Ejemplo

Comprobamos si está activa la rejilla REJ_02 del separador de formularios SEP_FOR

Interfaz: ¿está activo el subcontrol del contenedor de formularios? ( SEP_FOR, REJ_02, ACT )
If ( ! ACT )
    Mensaje ( "No se encuentra activa la rejilla", Información, ,  )
    Finalizar proceso

Interfaz: ¿está habilitado el subcontrol del contenedor de formularios?

Comando de instrucción del grupo Interfaz.

Permite conocer si un subobjeto del control (una pestaña de un separador, por ejemplo) está o no habilitado.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista de los subobjetos de tipo separador, caja y pila de formularios declarados en el formulario. Seleccionar el control sobre el que se desea actuar.

Identificador de subcontrol de formulario

Este parámetro desplegará la lista de los subformularios declarados en el control seleccionado en el parámetro anterior. Seleccionar el que se desea conocer si está o no habilitado.

Identificador de variable local booleana de retorno de ok

Especificación de una variable local.

Funcionalidad

Comentarios

Este comando solamente permite actuar sobre sub-controles del formulario en curso; no siendo posible, por tanto, actuar sobre sub-controles de los formularios incluidos dentro de éstos.

Este comando solamente puede ser usado en manejadores de eventos de objetos.

Ejemplo

Comprobamos si está habilitada la rejilla REJ_02 del separador de formularios SEP_FOR y mostramos su estado mediante un mensaje.

Interfaz: ¿está habilitado el subcontrol del contenedor de formularios? ( SEP_FOR, REJ_02, HAB )
Mensaje ( choose(HAB, "Rejilla habilitada", "Rejilla inhabilitada"), Información, ,  )

Interfaz: ¿está habilitado?

Comando de instrucción del grupo Interfaz.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto que desea comprobar:

Funcionalidad

Este comando de instrucción permite conocer si está habilitado un subobjeto del objeto en curso o de cualquiera de sus sub-objetos o del marco. Si está habilitado devolverá un 1 y si está deshabilitado devolverá un 0.

Comentarios

Este comando solamente puede ser usado en manejadores de eventos.

Además de comprobar si un control está o no habilitado, también podremos habilitarlo o deshabilitado.

Ejemplo

Comprobamos si está habilitado el control de tipo botón BTN_CHECK.

Interfaz: ¿está habilitado? ( BTN_CHECK, HAB )
If ( ! HAB )
    Mensaje ( "No se encuentra habilitado el botón”, Información, ,  )
    Finalizar proceso

Interfaz: ¿está visible?

Comando de instrucción del grupo Interfaz.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto a evaluar:

Funcionalidad

Este comando de instrucción permite conocer si es visible o no un subobjeto del objeto en curso o de cualquiera de sus sub-objetos o del marco. Si está visible devolverá un 1 y si está oculto devolverá un 0.

Comentarios

Este comando, puede ser usado tanto en manejadores de eventos.

Además de comprobar la visibilidad de un control, también podremos mostrarlo.

Ejemplo

Cortamos la lista de registros REJ del subformulario REJ_01 que se encuentra en el separador de formularios SEP_FOR en el caso de que el subformulario REJ_01 esté visible.

Interfaz: ¿está visible? ( SEP_FOR.REJ_01, VIS )
If ( VIS )
    Interfaz: procesar ( SEP_FOR.REJ_01.REJ, Todas )
        Cortar lista ( 0,  )

Interfaz: ¿tiene foco?

Comando de instrucción del grupo Interfaz tiene o no el foco.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto a evaluar:

Funcionalidad

Este comando de instrucción permite conocer si un subobjeto del objeto en curso o de cualquiera de sus sub-objetos o del marco tiene o no el foco. Si lo tiene devolverá un 1 y si no lo tiene devolverá un 0.

Comentarios

Este comando, puede ser usado tanto en manejadores de eventos.

Además de comprobar si un control tiene o no el foco, también podremos dárselo.

Ejemplo

Si tienen foco el campo NOM establecemos el valor del mensaje en la variable local VAR_MSG que pueda estar mostrándose en el control de texto estático en el formulario.

Interfaz: ¿tiene foco? ( NOM, FOCO )
If ( FOCO )
    Set ( VAR_MSG, "Actualmente tiene foco el campo NOM" )

Interfaz: activar subcontrol del contenedor de formularios

Comando de instrucción del grupo Interfaz.

Permite activar un subformulario concreto de los mismos.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista de los subobjetos de tipo separador, caja y pila de formularios declarados en el formulario. Seleccionar el objeto en el que se desea fijar el foco.

Identificador de subcontrol de formulario

Este parámetro desplegará la lista de los subformularios declarados en el control seleccionado en el parámetro anterior. Seleccionar el que se desea activar.

Funcionalidad

Este comando de instrucción permite activar un subformulario concreto de un control de tipo separador, caja o pila de formularios incrustado en un formulario.

Comentarios

Este comando solamente puede ser usado en manejadores de eventos.

Este comando solamente permite actuar sobre sub-controles del formulario en curso; no siendo posible, por tanto, actuar sobre sub-controles de los formularios incluidos dentro de éstos.

Este comando, al igual que el resto de los comandos de interfaz, solamente puede ser usado en manejadores de eventos de objetos.

Ejemplo

Activamos un subcontrol u otro dependiendo del valor de la variable REJ.

If ( REJ = 1 )
    Interfaz: activar subcontrol del contenedor de formularios ( SEP_FOR, REJ_01 )
Else
    Interfaz: activar subcontrol del contenedor de formularios ( SEP_FOR, REJ_02 )

Interfaz: deshabilitar

Comando de instrucción del grupo Interfaz.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto a deshabilitar:

Funcionalidad

Este comando de instrucción permite deshabilitar un subobjeto de un objeto. Cuando un objeto está deshabilitado, el usuario final no podrá interactuar con él.

Comentarios

Este comando, puede ser usado tanto en manejadores de eventos.

También podremos habilitar o deshabilitar subobjetos de un objeto declarando una condición en la propiedad Condición de activo del propio subobjeto.

Ejemplo

En la pérdida de foco del control del campo #NAME podemos comprobar si el campo #NAME de la ficha en curso está vacío deshabilitando el control BTC_ACE (Botón aceptar)

If ( isEmpty(#NAME) )
    Interfaz: deshabilitar ( BTN_ACE )

Interfaz: establecer foco

Comando de instrucción del grupo Interfaz.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto sobre el que se quiere fijar el foco:

Funcionalidad

Este comando de instrucción permite fijar el foco en un subobjeto del objeto en curso o de cualquiera de sus sub-objetos o del marco.

Comentarios

Este comando, puede ser usado tanto en manejadores de eventos.

En el caso de rejillas, este comando de instrucción nos permitirá seleccionar una columna de rejilla en la que posicionarse, abriendo la edición en el caso de que esté configurada.

Ejemplo: este comando nos permitirá fijar, desde un evento, el foco en un control concreto del mismo.

Si el objeto de origen es una ventana modal no podrá enviarse el foco a ningún objeto de la ventana que la contenga (por ejemplo, desde un formulario modal no podremos enviar el foco a un sub-objeto del marco principal del proyecto).

Cuando usamos este comando desde un evento de inicializado de un formulario, existe una diferencia funcional entre formularios en vista y formularios en cuadro de diálogo que es necesario conocer, ya que no puede evitarse:

En cuadro de diálogo: sólo se lanza el evento de ganancia de foco del control especificado en el manejador de evento inicializado.

En vista: primero gana foco el primer control de formulario y después gana foco el control especificado en el manejador de evento inicializado. Si el control especificado en el manejador de evento inicializado coincide que es el primer control, el evento sólo se ejecuta una vez.

Cuando establecemos foco con este comando no se dispara el manejador de evento asociado a las señales de pérdida de foco del control ni de ganancia de foco del control que recibe el foco. Esto es así porque, por un lado, somos nosotros los que estamos gestionando el foco, así que debemos ser nosotros los que realicemos la acción necesaria en ese caso (por ejemplo, lanzar el manejador de evento que deba ejecutarse al ganar el foco el control actual). Por otro lado, cuando se ejecuta un manejador de evento no se disparan otras señales y sus manejadores de evento ya que podría dar lugar a recursividades o ejecuciones en cascada no deseadas.

Ejemplo

Antes de aceptar un formulario comprobamos si los campos indicados están vacíos y establecemos el foco en el campo que se ha verificado.

If ( isEmpty(#NAME) )
    Interfaz: establecer foco ( NOM )
    Set retorno proceso = NO
If ( isEmpty(#SEC_ACT) )
    Interfaz: establecer foco ( SEC_ACT_NOM )
    Set retorno proceso = NO

Interfaz: establecer fuente

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto al que se aplicará la fuente:

Nombre de fuente

Nombre de la fuente a aplicar al subobjeto.

Funcionalidad

Permite aplicar una fuente.

Comentarios

Este comando, puede ser usado tanto en manejadores de eventos.

Ejemplo

Establecemos una fuente específica en el caso de que el control del campo #NAME no tenga contenido estableciendo el foco y el control en dicho control.

If ( isEmpty(#NAME) )
    Interfaz: establecer fuente ( NOM, Nombre_Fuente )
    Interfaz: establecer foco ( NOM )
    Set retorno proceso = NO

Interfaz: establecer hoja de estilo CSS

Comando de instrucción del grupo Interfaz.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto al que se le va a aplicar el css:

Fórmula texto hoja de estilo CSS

Funcionalidad

Comentarios

Este comando, puede ser usado tanto en manejadores de eventos.

El estilo aplicado afectará a todos los sub-objetos del objeto o sub-objeto al que se le ha aplicado. Es decir, si aplicamos una CSS al marco será aplicado a todos los sub-objetos del mismo y a todos las ventanas que se obtengan desde el mismo.

Ejemplo:

Código fuente original de CSS:

nameEdit->setStyleSheet("color: blue;""background-color: yellow;""selection-color: yellow;""selection-background-color: blue;");

Fórmula en Velneo:

"nameEdit->setStyleSheet(\ccolor: blue;\c\cbackground-color: yellow;\c\cselection-color: yellow;\c\cselection-background-color: blue;\c);"

NOTA: las hojas de estilo CSS afectan en función del estilo visual. En Windows, por ejemplo, la cabeceras de las rejillas no pueden ser modificadas ya que el estilo visual no lo permite. Si aplicamos un CSS en el marco principal de la aplicación, éste no será aplicado a los objetos disparados desde manejadores de evento del mismo. En este caso debemos aplicar e CSS desde el propio objeto que se dispara.

Ejemplo

Establecemos una hoja de estilo CSS para las rejillas en el manejador de eventos PRE_INI del objeto AUTOEXEC

Rem ( Aplicar hoja de estilo )
Interfaz: establecer hoja de estilo CSS ( , "/* - - - CSS REJILLA- - - - */
QTableView {
 selection-background-color: #A6C7EE;
 selection-color: #000;
 column-background-color: #FFF;
 column-color: #757575;
 alternate-background-color: #EEEEEE;
 padding: 5px;
 border-width: 1px;
 border-style: solid;
 border-color: #CECECE;
 background: #FFF;
}" )

Interfaz: establecer hoja de estilo filescript

Comando de instrucción del grupo Interfaz.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto al que se le va a aplicar el css:

Path script file

Fichero CSS a ejecutar. Se desplegará una lista con todos los ficheros accesibles desde el proyecto en curso. Seleccionaremos el deseado. En la ventana de selección del fichero podemos activar la opción aplicar macros. Si se activa lo que se hace es sustituir el id_ref de proyecto por la macro (CurrentProject). De esta forma, cuando movamos el script y el proceso de un proyecto a otro, la referencia se conservará gracias a la macro, apuntando al fichero correspondiente buscándolo en el proyecto en curso.

Funcionalidad

Permite modificar de forma dinámica el aspecto visual de un objeto o de un subobjeto del objeto en curso o de cualquiera de sus sub-objetos o del marco almacenada en un fichero del proyecto o de un proyecto heredado.

Comentarios

Este comando, puede ser usado tanto en manejadores de eventos.

El estilo aplicado afectará a todos los sub-objetos del objeto o sub-objeto al que se le ha aplicado. Es decir, si aplicamos una CSS al marco será aplicado a todos los sub-objetos del mismo y a todos las ventanas que se obtengan desde el mismo.

Nota

Las hojas de estilo CSS afectan en función del estilo visual. En Windows, por ejemplo, la cabeceras de las rejillas no pueden ser modificadas ya que el estilo visual no lo permite.

Ejemplo

Establecemos una hoja de estilo CSS de un Script del proyecto en el manejador de eventos PRE_INI del objeto AUTOEXEC

Rem ( -------------------------------------------- )
Rem ( Aplicar hoja de estilo desde Scripts)
Rem ( -------------------------------------------- )
Interfaz: establecer hoja de estilo CSS (filescript) ( .AUTOEXEC, (CurrentProject)/Scripts_CSS.css )

Interfaz: establecer paleta

Comando de instrucción del grupo Interfaz.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto al que se aplicará la paleta:

Nombre de paleta

Nombre de la paleta de colores a aplicar al subobjeto.

Funcionalidad

Permite aplicar una paleta de colores.

Comentarios

Este comando, puede ser usado tanto en manejadores de eventos.

En las propiedades de un proyecto de aplicación, podemos definir paletas de colores y asignarles un nombre. Con este comando y el nombre que se le ha dado a la paleta podemos fijar a un objeto dicho estilo de elementos.

Un ejemplo útil sería, si el usuario no ha rellenado un dato obligatorio en un formulario, lo detectamos y aplicamos con “set paleta” un color rojo a la fuente de la etiqueta del campo sin rellenar, con lo que el usuario lo localizará rápidamente.

Ejemplo

Aplicamos la Paleta_1 de colores al control NOM en caso de que la variable local APLICAR_PALETA sea 1.

If ( APLICAR_PALETA = 1 )
    Interfaz: establecer paleta ( NOM, Paleta_1 )

Interfaz: habilitar

Comando de instrucción del grupo Interfaz.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto a habilitar:

Funcionalidad

Comentarios

Este comando, puede ser usado tanto en manejadores de eventos.

También podremos habilitar o deshabilitar subobjetos de un objeto declarando una condición en la propiedad Condición de activo del propio subobjeto.

Ejemplo

Si el campo #NAME de la ficha en curso contiene información el control BTC_ACE (Botón aceptar) será habilitado.

If ( isEmpty(#NAME) = 0 )
    Interfaz: habilitar ( BTN_ACE )

Interfaz: habilitar el subcontrol del contenedor de formularios

Comando de instrucción del grupo Interfaz.

Permite habilitar/deshabilitar un subobjeto del control (una pestaña de un separador, por ejemplo).

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista de los subobjetos de tipo separador, caja y pila de formularios declarados en el formulario. Seleccionar el control sobre el que se desea actuar.

Identificador de subcontrol de formulario

Este parámetro desplegará la lista de los subformularios declarados en el control seleccionado en el parámetro anterior. Seleccionar el que se desea habilitar o deshabilitar.

Fórmula de condición

Expresión de tipo fórmula para establecer la condición que debe cumplirse para que el subcontrol esté habilitado. Para facilitar su introducción podemos hacer uso del asistente para edición de fórmulas.

Funcionalidad

Si la condición se cumple, el subcontrol estará habilitado, si no se cumple, estará deshabilitado; es decir, el usuario no podrá acceder al mismo.

Comentarios

Este comando solamente permite actuar sobre sub-controles del formulario en curso; no siendo posible, por tanto, actuar sobre sub-controles de los formularios incluidos dentro de éstos.

Este comando solamente puede ser usado en manejadores de eventos de objetos.

Ejemplo

Habilitamos un sub-control u otro dependiendo del valor de la variable REJ.

If ( REJ = 2 )
    Interfaz: habilitar subcontrol del contenedor de formularios ( SEP_FOR, REJ_02 )
Else
    Interfaz: habilitar subcontrol del contenedor de formularios ( SEP_FOR, REJ_01 )

Interfaz: mostrar

Comando de instrucción del grupo Interfaz.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto a mostrar:

Funcionalidad

Este comando de instrucción permite hacer visible un sub-objeto del objeto actual o de cualquiera de sus sub-objetos o del marco.

Comentarios

Este comando, puede ser usado tanto en manejadores de eventos.

También podremos mostrar u ocultar subobjetos de un objeto declarando una condición en la propiedad Condición visible del propio subobjeto.

Ejemplo

Mostramos los controles en caso de que el usuario sea administrador.

If ( sysIsAdministrator )
    Rem ( Botón suprimir )
    Interfaz: mostrar ( BTN_SUP )

Interfaz: ocultar

Comando de instrucción del grupo Interfaz.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto a ocultar:

Funcionalidad

Este comando de instrucción permite ocultar un subobjeto del objeto en curso o de cualquiera de sus sub-objetos o del marco.

Comentarios

Este comando, puede ser usado tanto en manejadores de eventos.

También podremos mostrar u ocultar subobjetos de un objeto declarando una condición en la propiedadCondición visible del propio subobjeto.

Este comando de instrucción no es funcional para ocultar columnas de rejillas.

Ejemplo

Ocultar los controles en caso de que el usuario no sea administrador.

If ( ! sysIsAdministrator )
    Interfaz: ocultar ( BTN_ACE_SEG )
    Rem ( Botón suprimir )
    Interfaz: ocultar ( BTN_SUP )

Interfaz: quitar foco

Comando de instrucción del grupo Interfaz.

Origen de la instrucción: cualquiera.

Destino del subproceso: ninguno.

Parámetros

Identificador de control

Este parámetro desplegará la lista con todos los objetos y sub-objetos accesibles desde el origen actual. Si algún objeto contiene a su vez otros sub-objetos, junto a su identificador aparecerá un nodo que podremos desplegar para acceder a los mismos. Seleccionar el objeto/sub-objeto al que se desea quitar el foco:

Funcionalidad

Este comando de instrucción permite quitar el foco de un subobjeto del objeto en curso o de cualquiera de sus sub-objetos o del marco.

Comentarios

Este comando, puede ser usado tanto en manejadores de eventos.

Ejemplo: este comando nos permitirá quita, desde un evento, el foco a un control concreto del mismo y llevarlo, mediante el comando Interfaz: activar foco objeto, a otro control.

Si el objeto de origen es una ventana modal no podrá quitarse el foco de ningún objeto de la ventana que la contenga (por ejemplo, desde un formulario modal no podremos quitar el foco a un sub-objeto del marco principal del proyecto).

Ejemplo

Comprobamos si tiene foco el control FCH_ALTA y si lo tiene quitamos el foco de dicho control y lo establecemos en el control TXT_HOR.

Interfaz: ¿tiene foco? ( FCH_ALTA, TIENE )
If ( TIENE )
    Interfaz: quitar foco ( FCH_ALTA )
    Interfaz: establecer foco ( TXT_HOR )

Grupo de comandos de .

Este comando de instrucción permite conocer si un subformulario de un control de tipo está o no habilitado y guarda en una variable local de tipo booleano su estado. Si es 1 querrá decir que el subcontrol está habilitado, si es 0, que está deshabilitado.

Este comando no es funcional en separadores que contengan con la propiedad punto de inserción activada. El motivo es que desde el origen actual no se tiene conocimiento del formulario o formularios añadidos al punto de inserción.

Ejemplo: en un formulario podremos ejecutar eventos para que, en función de una condición, mediante el uso de este comando y del comando , un subcontrol del formulario esté habilitado o no.

Este comando de instrucción de proceso no es funcional en el caso de que el control sea un .

Comando de instrucción que permite aplicar una principal del proyecto.

En las propiedades de un , podemos definir fuentes y asignarles un nombre. Con este comando y el nombre que se le ha dado a la fuente podemos fijar a un objeto dicho estilo de elementos. Un ejemplo útil sería, si el usuario no ha rellenado un dato obligatorio en un formulario, lo detectamos y aplicamos con este comando una fuente negrita a la fuente de la etiqueta del campo sin rellenar, con lo que el usuario lo localizará rápidamente.

Expresión de tipo fórmula con el código fuente del CSS a aplicar. Para facilitar la especificación de la fórmula podremos hacer uso del .

Permite modificar de forma dinámica el aspecto visual de un objeto o de un subobjeto del objeto en curso o de cualquiera de sus sub-objetos o del .

Para obtener información sobre las CSS aplicables a Velneo pulsa .

Si en la fórmula vamos a escribir directamente el código fuente correspondiente al CSS a aplicar, debemos tener en cuenta que, dado que la comilla (“) es el carácter que se usa en las fórmulas para delimitar constantes, si en el código fuente del CSS hay comillas, tendremos que sustituir éstas en la fórmula por la “\c”.

Dicha hoja de estilos estará almacenada dentro del proyecto en curso o de un proyecto heredado, dentro de la carpeta de .

Para obtener información sobre las CSS aplicables a Velneo pulsa .

Este comando, si bien sigue funcional en la versión actual, en próximas versiones podrá desaparecer, así que recomendamos su sustitución por el uso de CSS, que podremos aplicar mediante el comando de instrucción de proceso

Este comando de instrucción permite habilitar un subobjeto del objeto en curso o de cualquiera de sus sub-objetos o del . Cuando un objeto está habilitado, el usuario final podrá interactuar con él, si está deshabilitado, no.

Ejemplo: en un formulario podremos ejecutar eventos para que, en función de una condición, mediante el uso de este comando y del comando un subcontrol del formulario esté habilitado o no.

Este comando de instrucción permite habilitar/deshabilitar un subformulario de un control de tipo mediante la especificación de una condición.

Este comando exige que al menos un subformulario del objeto esté habilitado. En el caso de querer deshabilitarlos todos lo que tendremos que hacer es deshabilitar el control en sí (el separador) mediante el uso del comando de instrucción en el formulario.

Ejemplo: en un formulario podremos ejecutar eventos para que, en función de una condición, mediante el uso de este comando y del comando un subcontrol del formulario sea mostrado u ocultado.

Ejemplo: en formulario podremos ejecutar eventos para que, en función de una condición, mediante el uso de este comando y del comando , un control del mismo sea mostrado u ocultado.

Interfaz
Separador formularios
formularios
botón
fuente
proyecto de aplicación
asistente para edición de fórmulas
marco
aquí
secuencia de escape
aquí
marco
Separador formularios
Interfaz: ¿está activado el subcontrol del contenedor de formularios?
Interfaz: ¿está habilitado el subcontrol del contenedor de formularios?
Interfaz: ¿está habilitado?
Interfaz: ¿está visible?
Interfaz: ¿tiene foco?
Interfaz: activar subcontrol del contenedor de formularios
Interfaz: deshabilitar
Interfaz: establecer foco
Interfaz: establecer fuente
Interfaz: establecer hoja de estilo CSS
Interfaz: establecer hoja de estilo filescript
Interfaz: establecer paleta
Interfaz: habilitar
Interfaz: habilitar el subcontrol del contenedor de formularios
Interfaz: mostrar
Interfaz: ocultar
Interfaz: quitar foco
Interfaz: habilitar
Interfaz: establecer hoja de estilo CSS.
Interfaz: deshabilitar,
Interfaz: deshabilitar
Interfaz: ocultar,
Interfaz: mostrar
scripts