Documentación de Velneo
21
21
  • Introducción
  • Velneo 21
    • ¿Qué es velneo?
    • Requerimientos de Velneo
    • Funcionalidades comunes a los componentes de Velneo
      • 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
  • 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
    • Proyectos objetos y editores
      • Objeto
      • Proyecto de datos
        • Tabla
          • Campo
          • Enlace
          • Indice
          • Plural
          • Actualización
          • Trigger
          • Traspaso de campo
        • Tabla estática
        • Indice complejo
        • Variable
      • Proyecto de aplicación
        • Marco
        • Acción
        • Menú
        • Toolbar
        • Rejilla
          • Propiedades de columna
        • 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
            • Edición alfabética
            • Edición numérica
            • Data catcher edit
            • Objeto dibujo
            • Edición fecha/hora
            • Edición fecha
            • Edición hora
            • Caja de texto
            • Caja de texto enriquecido
            • Edición fórmula
            • Edición senda fichero
            • Edición senda directorio
          • Controles de entrada
            • Botón
            • Botón de radio
            • Botón de check
            • ComboBox
            • ListBox
            • Deslizador
            • Rueda
            • Dial
            • Calendario
          • Contenedores
            • Separador de formularios
            • Splitter
            • Pila de formularios
            • Caja de formularios
            • Vista de datos
          • Layout
          • Tree widget
          • Controles SVG
          • Fichas de extensión
        • Búsqueda
        • Localizador
        • Lupa
        • Arbol visor de tablas
        • Casillero
        • Multivista
        • Bloc de formularios
        • Informe
          • Agrupamiento
          • Sección
          • Editor de informes
          • 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
        • Impresora lógica
        • Cesta
        • Dispositivo serie
        • Imagen SVG
        • Control SVG
        • ViewFlow
        • Rejilla avanzada
        • Alternador de lista
        • ListView
        • ComboView
        • Formulario QML
        • Lista QML
        • Toolbar
        • Protocolo TCP-IP
        • Librería externa
        • Conexión de evento
        • Manejador de evento
        • Drop
        • Inserción
      • Objetos de proyectos de aplicación y datos
        • Dibujo
        • Constante
        • 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
        • Cola
        • Función
        • Variable local
        • Tubo de ficha
        • Tubo de lista
        • Esquema de tablas
        • Fichero adjunto
      • Editores
        • Editor de imágenes
        • Selector de fuentes
        • 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
          • 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
          • Funciones de campo
    • Inspectores
    • Scripts
      • Lenguajes
        • JavaScript
          • Procesos JavaScript
          • Fórmulas JavaScript
          • Clases
            • Funciones globales
            • Objetos
            • VAbstractBrowser
            • VAbstractDataView
            • VAbstractListDataView
            • VAdvandedGridListDataView
            • VAlternatorListDataView
            • VApp
            • VBoundFieldComboBox
            • VBoundFieldEdit
            • VBoundFieldEditBrowser
            • VBoundFieldListBox
            • VByteArray
            • VCheckBox
            • 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
            • VMultiDataView
            • VNumberSpinBox
            • VNumberSpinBoxBrowser
            • VObjectInfo
            • VObjectInstance
            • VProcess
            • VProgressBar
            • VProjectInfo
            • VPushButton
            • VQmlFormDataView
            • VQmlListDataView
            • VQmlListModel
            • VQuery
            • VRadioButton
            • VRegister
            • VRegisterList
            • VReportListDataView
            • VRequest
            • VResponse
            • VRoot
            • VScreen
            • 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
          • QML1 vs QML2
          • Migrar aplicaciones de QML 1 a QML 2
          • Funciones específicas de QML
    • Depuración
      • Depuración de procesos de Velneo
      • Depuración de procesos JavaScript
    • Extensiones de Velneo vDevelop
    • Acceso directo a una solución desde vDevelop
    • Buenas prácticas
      • Buenas prácticas de organización
        • Solución
        • Proyecto de datos
        • Proyecto de aplicación
      • Buenas prácticas de codificación
        • Diccionario de abreviaturas
        • No te olvides nunca. Escribes y mantienes código. Documenta bien
        • 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
          • 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
          • Reduce el número de índices
          • 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?
          • ¿Cúando usar índices complejos?
          • Actualizaciones vs triggers
          • Puntero indirecto real vs virtual
          • Campos alfa vs campos objeto texto
          • Uso de fórmulas JavaScript en campos
          • Evitar filtrar y ordenar
        • Formularios
          • Condiciones de visible y activo
          • Carga de subformularios en pestaña, caja o pila
        • Procesos
          • 1º, 2º y 3º 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
        • Rejillas
          • Campos punteros a singular
          • Totales
          • Condiciones de activo, visible y color en columna
          • Campos de tipo objeto
        • Conoce los límites
      • Buenas prácticas para el desarrollo en equipo
  • Velneo vAdmin
    • ¿Qué es Velneo vAdmin?
    • Gestión de usuarios
    • Gestión de aplicaciones
      • Soluciones
      • Instancias
      • Disco
    • Monitorización
    • 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
      • Manejo de cestas de la compra
      • Refrescos
      • Caché local
      • Edición de campos enlazados a maestro
      • Asignar impresoras lógicas
      • Actualización automática
      • Personalización de la ventana de conexión de Velneo vClient
      • Instalador personalizado de Velneo vClient
      • Uso de la rejilla avanzada
      • Ordenación de listas
      • Captura de imágenes desde cámara
  • 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
      • Refrescos terciarios
      • Sistema transaccional
      • Sistema de bloqueos
      • Tecnología bigkey
      • Hilo de control
      • Cómputo del consumo de puestos
    • vPacker
  • Velneo vInstallBuilder
    • ¿Qué es Velneo vInstall Builder?
    • 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
  • 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
  • Velneo vTutor
    • ¿Qué es vTutor?
    • Tutores de objetos básicos
      • Tutor de marcos
      • Tutor de formularios
      • Tutor de rejillas
      • Tutor de árboles visores de tablas arboladas
      • Tutor de búsquedas
      • Tutor de informes
      • Tutor de cestas
      • Tutor de localizador básico
    • Tutores de objetos avanzados
      • Tutor de alternadores de lista
      • Tutor de impresión de informes
      • Tutor de tubos de ficha y de lista
      • Tutor de grabación de fichas
      • Tutor de comboview
      • Tutor de eventos
      • Tutor de drag and drop
      • Tutor de TCP/IP
    • Tutores de controles
      • Tutor de botones de menú
      • Tutor de controles SVG
      • Tutor de edición numérica
      • Tutor de vistas de datos de lista
      • Tutor de visor html dinámico
    • Tutores de procesos y manejadores de evento avanzados
      • Tutor de procesos
      • Tutor de importación y exportación de ficheros ASCII
      • Tutor de comandos de interfaz y acciones
    • Tutores de scripts
      • QML: Hola mundo
      • QML: tutorial básico
      • QML: Tutor de vistas
  • Velneo cloud
    • ¿Qué es Velneo Cloud?
    • Copias de seguridad
    • Velneo cloud API
      • Uso de Velneo cloud API
    • Explorador de archivos cloud sFTP
    • TCP en Velneo cloud
    • SLA
Con tecnología de GitBook
En esta página
  • Identificador
  • Nombre
  • Estilos
  • Comentarios
  • Control
  • Señal
  • Manejador de evento
  • Dos consideraciones sobre las señales
  • Lista de señales disponibles por objeto y sub-objeto
  • Rejilla
  • Columna de rejilla (solamente válido para rejillas editables)
  • Árbol
  • Casillero
  • Combo View
  • List-View
  • Formulario
  • Controles de formulario
  • Multivista
  • Bloc de formularios
  • Marco
  • ViewFlow
  • Informe
  • Alternador de lista
  • Formulario QML
  • Lista QML
  • Rejilla avanzada

¿Te fue útil?

  1. Velneo vDevelop
  2. Proyectos objetos y editores
  3. Proyecto de aplicación

Conexión de evento

Última actualización hace 4 años

¿Te fue útil?

El subobjeto conexión de evento permite conectar un manejador de evento, etc.

Para crear una conexión de evento hemos de pulsar el botón en el panel de subobjetos de Velneo vDevelop.

Sus propiedades son:

Identificador

Etiqueta alfanumérica que identifica al objeto. Este identificador será el que se usa para referenciarlo en los inspectores y en las propiedades de otros objetos.

Nombre

Etiqueta alfanumérica que servirá como descriptor de la conexión de evento. Es el texto que se presentará al usuario final de la aplicación para referenciar la conexión de evento. Podemos definir una etiqueta por cada idioma presente en el proyecto.

Estilos

Podemos definir el estilo privado que limita el acceso del usuario final al objeto desde puntos donde no se haya programado el acceso al mismo.

Comentarios

Esta propiedad nos permite documentar el uso de la conexión de evento.

Control

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

Podremos seleccionar por tanto, tanto el propio objeto como cualquier objeto/subobjeto accesible desde el objeto actual. Por tanto, no solamente podremos atrapar señales disparadas dentro del propio objeto sino desde cualquier subobjeto contenido en el mismo o incluso del principal del proyecto, excepto la señal acción disparada, que solamente puede ser atrapada desde el propio objeto que la emite.

Señal

Esta propiedad nos permite seleccionar qué suceso es el que desencadena el disparo del manejador de evento. Según el tipo de objeto o subobjeto estarán serán funcionales unas señales u otras. Las señales disponibles y los objetos o subobjetos en los que son funcionales:

Gana foco

El manejador de evento será disparado cuando el objeto o sub-objeto asociado a la conexión de evento gane el foco.

Pierde foco

El manejador de evento será disparado cuando el objeto o sub-objeto asociado a la conexión de evento pierda el foco. En rejillas editables, debemos tener en cuenta lo siguiente: Para que se inicie la edición de una celda tiene que ganar foco, por lo que la rejilla pierde foco. Así que se disparará la señal de pérdida de foco cada vez que iniciemos la edición en cada celda individual.

No se deben mostrar mensajes o formularios en los manejadores de evento disparados con esta señal de pérdida foco, porque eso produce efectos secundarios ya que a su vez estamos generando nuevas pérdidas de foco.

En las rejillas editables los eventos de ganancia y de pérdida de foco tienen un comportamiento particular: la señal de ganancia de foco se emite cuando se entra en la edición de cada columna y la de pérdida de foco cuando pierde el foco la rejilla. Gracias a que el de pérdida de foco no se produce en cada entrada en edición, podemos controlar la ejecución del manejador de evento asociado a la ganancia de foco para que solo se realice la primera vez que gana foco, utilizando una variable local booleana que se pondrá a 1 cuando se ejecuta el evento de ganancia de foco y a 0 cuando se ejecute la pérdida de foco de la rejilla.

On hide

El manejador de evento será disparado cuando el control asociado a la conexión de evento deje de estar visible.

On show

El manejador de evento será disparado cuando el control asociado a la conexión de evento se haga visible.

No se deben usar comandos que generen interfaz en manejadores de evento disparados con esta señal.

Tecla pulsada

El manejador de evento será disparado cuando, estando el foco en el objeto o sub-objeto asociado a la conexión de evento , se pulse una tecla.

Tecla soltada

El manejador de evento será disparado cuando, estando el foco en el objeto o sub-objeto asociado a la conexión de evento , se suelte una tecla pulsada previamente.

Ratón: botón doble-click

El manejador de evento será disparado cuando se haga doble clic con el botón del ratón sobre el objeto o sub-objeto asociado a la conexión de evento.

Ratón: botón pulsado

El manejador de evento será disparado cuando se pulse un botón del ratón sobre el objeto o sub-objeto asociado a la conexión de evento.

Ratón: botón soltado

El manejador de evento será disparado cuando se suelte un botón del ratón (pulsado previamente) sobre el objeto o sub-objeto asociado a la conexión de evento .

Ratón: movimiento

El manejador de evento será disparado cuando se mueva el ratón sobre el objeto o sub-objeto asociado a la conexión de evento, dependiendo del objeto o sub-objeto esta señal solamente se disparará manteniendo pulsado un botón del ratón.

valueChanged

El manejador de evento será disparado cuando cambie el valor del sub-objeto editado en un control de un formulario, o en una columna editable de una rejilla editable. Esta señal solamente se dispara cuando es el usuario quien cambia el contenido del control escribiendo directamente sobre el mismo, pero no cuando modificamos el mismo de forma externa (desde otro manejador de evento, con una acción de tipo ficha: localizar maestro, etc.).

Ventana movida

El manejador de evento será disparado cuando se mueva la ventana donde el objeto o sub-objeto asociado a la conexión de evento se encuentre contenido.

Ventana redimensionada

El manejador de evento será disparado cuando se modifique el tamaño de la ventana donde el objeto o sub-objeto asociado a la conexión de evento se encuentre contenido.

Item: cambio de seleccionado

Conexión de evento específico para objetos o subcontroles de listas (rejillas, casilleros, etc.) y formularios. El manejador de evento se disparará cuando cambie el elemento seleccionado en el objeto de lista asociado a a la conexión de evento.

En objetos de lista, el origen del evento será la ficha de origen. En el caso de que queramos acceder a la ficha de destino en el manejador de evento usaremos el comando de instrucción Leer ficha seleccionada.

En formularios, la señal se disparará después de la inicialización de la ficha y en el cambio de ficha mostrada. Éste último caso es útil en visualizaciones sincronizadas (multivista, etc.) en las que cambia la ficha y permanece el formulario construido inicialmente.

Item: pre cambio de seleccionado

Conexión de evento específico para formularios con origen. Esta señal sería previa a la ítem: cambio de seleccionado y permitirá al programador realizar acciones sobre el registro antes de que sea sustituido en el objeto por otro. Por ejemplo, detectar si ha habido cambios en el registro y guardarlos o preguntar al usuario por la acción a realizar.

Post-Inicialización

Se dispara cuando el objeto ha sido inicializado. Esta señal solamente puede ser atrapada desde el propio objeto, no puede ser atrapada desde otros objetos. Esta señal es disparada después de construirse el objeto.

Pre-Inicialización

Se dispara antes de inicializarse el objeto. Con esta señal, podremos disparar manejadores de evento que realicen operaciones antes de que el objeto sea presentado al usuario. Esta señal solamente puede ser atrapada desde el propio objeto, no puede ser atrapada desde otros objetos. Dado que la señal se dispara antes de crearse el objeto, no podremos usar en el manejador de evento que se dispare instrucciones que afecten a la interfaz, ya que no se ha construido todavía.

On close

Esta señal es específica para el marco principal del proyecto. Se disparará cuando el marco de la aplicación sea cerrado por cualquier método o acción del usuario, tanto a través del teclado como usando el ratón.

Pre-vista cerrada

Esta señal es específica para el marco principal del proyecto. El manejador de evento será disparado cuando se cierre una vista y antes de que ésta sea cerrada.

Vista activada

Esta señal es específica para el marco principal del proyecto. El manejador de evento será disparado cuando se active una vista dentro del marco.

Vista añadida

Esta señal es específica para el marco principal del proyecto. El manejador de evento será disparado cuando se añada una nueva una vista dentro del marco.

Vista cerrada

Esta señal es específica para el marco principal del proyecto. El manejador de evento será disparado cuando se cierra una nueva una vista dentro del marco, después de ser cerrada.

Timer

El manejador de evento asociado a la conexión de evento se disparará de forma periódica, según un tiempo que deberá ser configurado en el objeto asociado a la conexión de evento. Debemos tener en cuenta que los timers disparan eventos que fuerzan el refresco de los controles, así que, si coincide que estamos escribiendo en un control de edición de un texto y cuando pulsamos la barra espaciadora para incluir un espacio en blanco se dispara el timer, como éste refresca los controles, al refrescarlo eliminará ese espacio en blanco no significativo.

Botón pulsado

El manejador de evento asociado a la conexión de evento se disparará cuando el botón que hayamos especificado en la conexión de evento sea pulsado.

Acción disparada

El manejador de evento asociado a la conexión de evento se disparará cuando se lance una acción concreta. Esta señal solamente puede ser atrapada si se lanza en el contexto del objeto, no puede ser atrapada desde otros objetos. Por ejemplo, en un formulario podremos atrapar las acciones que se disparen desde botones del formulario, o desde menús incluidos en botones del mismo, etc. En una rejilla, podremos atrapar las acciones que se disparen desde la toolbar asociada a la misma.

Item: activado

El manejador de evento asociado a la conexión de evento se disparará cuando se active un elemento del objeto o sub-objeto asociado a la conexión de evento.

Item: simple-click

El manejador de evento asociado a la conexión de evento se disparará cuando se haga un clic sobre un elemento del objeto o sub-objeto asociado a la conexión de evento.

Item: doble-click

El manejador de evento asociado a la conexión de evento se disparará cuando se haga doble clic sobre un elemento del objeto o sub-objeto asociado a la conexión de evento.

Drop finalizado

Señal específica para objetos que tenga activada la funcionalidad de drag & drop. Disparará el manejador de evento asociado a la conexión de evento cuando haya finalizado el drop.

Edición iniciada

Solamente funcional en rejillas editables. El manejador de evento asociado a la conexión se disparará cuando se inicie la edición de un registro en la rejilla.

Edición aceptada

Solamente funcional en rejillas editables. El manejador de evento asociado a la conexión se disparará con posterioridad a la aceptación de la edición de un registro en la rejilla.

Edición cancelada

Solamente funcional en rejillas editables. El manejador de evento asociado a la conexión se disparará con posterioridad a la cancelación de la edición de un registro en la rejilla.

Edición pre-aceptada

Solamente funcional en rejillas editables. El manejador de evento asociado a la conexión se disparará cuando antes de finalizar la edición (guardando cambios) de un registro en la rejilla. Usaremos esta señal si queremos, por ejemplo, hacer algún tipo de comprobación previa al alta/modificación de la ficha.

Edición pre-cancelada

Solamente funcional en rejillas editables. El manejador de evento asociado a la conexión se disparará cuando antes de hacerse efectiva la cancelación de la edición de un registro en la rejilla. Usaremos esta señal si queremos, por ejemplo, hacer algún tipo de comprobación previa a la cancelación del alta/modificación de la ficha.

En el manejador de evento que se dispara en señales pre-aceptada, pre-cancelada, debemos evitar mostrar mensajes puesto que generará problemas con el foco cuando estamos en edición (por ejemplo si usamos un comando set retorno = NO).

Contents changed (obsoleta)

Solamente váida para el control visor html. El manejador de evento asociado a la conexión se disparará cuando cambie el contenido de un control editable dentro de la página web que se está mostrando en el visor html.

Link clicked

Solamente funcional en el control visor html. El manejador de evento asociado a la conexión se disparará cuando pulsamos un enlace.

Para que un control HTML lance esa señal, será necesario ejecutaren el evento inicializado del formulario donde se incluya un manejador de evento JavaScript con un código similar al siguiente:

// Atrapamos todos los clics en enlaces del control visor html menu = theRoot.dataView().control( “ID_CONTROL” ); menu.setLinkDelegationPolicy( VCWebView.DelegateAllLinks );

Con la funcion setLinkDelegationPolicy le decimos al navegador cómo queremos que gestione los link pulsados:

  • DontDelegateLinks: en este modo el navegador gestiona todos los enlaces.

  • DelegateExternalLinks: en este modo el navegador gestiona los enlaces internos (del sistema de ficheros local) y emite la señal LinkClicked(url) para los externos.

  • DelegateAllLinks: en este modo emite la señal LinkClicked(url) para todos los enlaces.

El modo por defecto es DontDelegateLinks. Si el navegador gestiona un enlace emite la señal LoadStarted y, si no, emite la señal LinkClicked(url), en cuyo caso hay que cargar la página en el manejador del evento o realizar la acciones que consideremos oportunas.

El valor del enlace activado (url) se puede leer en el valor 1 de la variables local especial tipo array EVENT_PARAMS.

Load started

Load progress

Solamente funcional en el control visor html. El manejador de evento asociado a la conexión se disparará durante la carga de la página.

Load finished

Solamente funcional en el control visor html. El manejador de evento asociado a la conexión se disparará al finalizar la página.

Url changed

Solamente funcional en el control visor html. El manejador de evento asociado a la conexión se disparará cuando cambie la URL que se está mostrando.

NOTA: No todas las señales estarán disponibles para todos los objetos o subobjetos. Cuando programemos una conexión de evento las señales disponibles variarán en función del objeto o subobjeto que asociemos a la misma.

Manejador de evento

Dos consideraciones sobre las señales

1) Debemos ser conscientes de que, cuando se ejecuta un manejador de evento, no se dispararán otras señales y sus manejadores de evento, ya que podría dar lugar a recursividad o ejecuciones en cascada no deseadas.

Lo veremos más claro con un ejemplo:

Hemos programado un manejador de evento que se dispara con la señal “gana foco” asociada a un control de un formulario, y programamos otro manejador de evento que lleva el foco a dicho control con el comando interfaz: establecer foco.

Según lo dicho antes, al ejecutar el manejador de evento que establece foco en el control, no se disparará la señal de ganancia de foco, por lo tanto, si queremos que se ejecute el manejador de evento asociado a la misma, lo único que tendremos que hacer es, en el manejador de evento que establece el foco, disparar el otro manejador de evento con el comando Interfaz: Ejecutar evento.

2) Si tenemos programadas varias conexiones de evento asociadas a un mismo control y con la misma señal, solamente se disparará la primera de ellas.

Por ejemplo, si hemos programado varias conexiones de evento del tipo “gana foco” sobre el mismo control, sólo se lanza la primera de ellas y no el resto.

Lo que se podría hacer es declarar una única señal del tipo “gana foco” que dispare un manejador de evento que lance todos los manejadores que se quieran ejecutar al ganar foco el control.

Lista de señales disponibles por objeto y sub-objeto

A continuación mostramos una lista de las señales que son funcionales en los distintos objetos y sub-objetos de aplicación de Velneo.

Rejilla

Acción disparada Drop finalizado Edición aceptada Edición cancelada Edición iniciada Gana foco (y a nivel de columna, en columnas editables de rejillas editables). On hide On show Pierde foco Post-inicializado Pre-edición aceptada Pre-edición cancelada Pre-inicialización Tecla pulsada (Hay dos excepciones: No se disparará con las teclas Insert ni Supr. Esto es debido a que Se procesan internamente no emitiendo la señal de tecla pulsada para garantizar el correcto funcionamiento del control.) Tecla soltada Timer Ventana movida Ventana redimensionada Ítem: activado Ítem: cambio de seleccionado Ítem: doble-click Ítem: simple-click

Columna de rejilla (solamente válido para rejillas editables)

Gana foco On hide On show Pierde foco Ratón: botón doble-click Ratón: botón pulsado Ratón: movimiento Tecla pulsada Tecla soltada Ventana movida Value changed

Árbol

Acción disparada Drop finalizado Gana foco On hide On show Pierde foco Post-inicializado Pre-Inicialización Tecla pulsada Tecla soltada Ventana movida Ventana redimensionada Ítem: activado Ítem: cambio de seleccionado Ítem: doble-click Ítem: simple-click

Casillero

Acción disparada Drop finalizado Gana foco On hide On show Pierde foco Post-inicializado Pre-Inicialización Tecla pulsada Tecla soltada Timer Ventana movida Ventana redimensionada Ítem: activado Ítem: cambio de seleccionado Ítem: doble-click Ítem: simple-click

Combo View

Acción disparada Drop finalizado Gana foco On hide On show Pierde foco Post-inicializado Pre-Inicialización Tecla pulsada Tecla soltada Timer Ventana movida Ventana redimensionada Ítem: activado Ítem: cambio de seleccionado

List-View

Acción disparada Drop finalizado Gana foco On hide On show Pierde foco Post-inicializado Pre-Inicialización Tecla pulsada Tecla soltada Timer Ventana movida Ventana redimensionada Ítem: activado Ítem: cambio de seleccionado Ítem: doble-click Ítem: simple-click

Formulario

Acción disparada On hide On show Post-inicialización Pre-Inicialización Timer Item: Cambio de seleccionado (para formularios con origen) Item: Pre-cambio de seleccionado (para formularios con origen)

Controles de formulario

Barra de progreso

On hide On show Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Ventana movida Ventana redimensionada

Caja de grupo

On hide On show Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Ventana movida Ventana redimensionada

Dibujo

On hide On show Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Ventana movida Ventana redimensionada

Nombre de campo

On hide On show Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Ventana movida Ventana redimensionada

IImagen SVG

On hide On show Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Ventana movida Ventana redimensionada

Texto estático

On hide On show Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Ventana movida Ventana redimensionada

Botón

Botón pulsado Gana foco On hide On show Pierde foco Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Tecla pulsada Tecla soltada Ventana movida Ventana redimensionada

Edición alfabética, hora, fecha, fecha-hora, numérica, senda fichero senda directorio y fórmula

Gana foco On hide On show Pierde foco Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Tecla pulsada Tecla soltada valueChanged Ventana movida Ventana redimensionada

Calendario

Gana foco On hide On show Pierde foco Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Tecla pulsada Tecla soltada valueChanged Ventana movida Ventana redimensionada

Botón de radio

Gana foco On hide On show Pierde foco Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Tecla pulsada Tecla soltada valueChanged Ventana movida Ventana redimensionada

Botón de check

Gana foco On hide On show Pierde foco Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Tecla pulsada Tecla soltada valueChanged Ventana movida Ventana redimensionada

Rueda

Gana foco On hide On show Pierde foco Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Tecla pulsada Tecla soltada valueChanged Ventana movida Ventana redimensionada

Deslizador

Gana foco On hide On show Pierde foco Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Tecla pulsada Tecla soltada valueChanged Ventana movida Ventana redimensionada

Dial

Gana foco On hide On show Pierde foco Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Tecla pulsada Tecla soltada valueChanged Ventana movida Ventana redimensionada

Data Catcher Edit

Gana foco On hide On show Pierde foco Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Tecla pulsada Tecla soltada valueChanged Ventana movida Ventana redimensionada

ComboBox

Gana foco On hide On show Pierde foco Tecla pulsada Tecla soltada Ventana movida Ventana redimensionada Ítem: activado Ítem: cambio de seleccionado

ListBox

Ítem: cambio de seleccionado

Vista de datos

Las señales disponibles serán las que tenga disponibles el objeto usado.

Caja de texto y caja de texto enriquecido

Gana foco On hide On show Pierde foco Tecla pulsada Tecla soltada Value changed Ventana movida Ventana redimensionada

Visor HTML

Contents changed Gana foco (no funcional en la versión actual) Link clicked Load finished Load progress Load started On hide On show Pierde foco (no funcional en la versión actual) Tecla pulsada (no funcional en la versión actual) Tecla soltada (no funcional en la versión actual) Ratón: botón doble-click (no funcional en la versión actual) Ratón: botón pulsado (no funcional en la versión actual) Ratón: botón soltado (no funcional en la versión actual) Ratón: movimiento (no funcional en la versión actual) Tecla pulsada (no funcional en la versión actual) Tecla soltada (no funcional en la versión actual) Url changed Ventana movida Ventana redimensionada

Separador formularios

On hide On show Ventana movida Ventana redimensionada Item: Cambio de seleccionado

Caja de formularios

On hide On show Ventana movida Ventana redimensionada Item: Cambio de seleccionado

Splitter

On hide On show Ventana movida Ventana redimensionada

Objeto dibujo

Gana foco On hide On show Pierde foco Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Tecla pulsada Tecla soltada Value changed Ventana movida Ventana redimensionada

Layout, espaciador fijo, spaciador expandible y e

Ninguna

Pila de formularios

On hide On show Ventana movida Ventana redimensionada Item: Cambio de seleccionado

Reloj

On hide On show Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Ventana movida Ventana redimensionada

Manómetro

On hide On show Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Ventana movida Ventana redimensionada

Termómetro

On hide On show Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Ventana movida Ventana redimensionada

Controles SVG

Gana foco On hide On show Pierde foco Tecla pulsada Tecla soltada Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Tecla pulsada Tecla soltada valueChanged (solamente para botones SVG tipo Toggle y Slide) Ventana movida Ventana redimensionada

Menú arbolado

On hide On show Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Ventana movida Ventana redimensionada

Multivista

Acción disparada On hide On show Post-inicializado Pre-inicialización Ventana movida Ventana redimensionada Ítem: activado Ítem: cambio de seleccionado Ítem: doble click Ítem: simple click

Bloc de formularios

Acción disparada On hide On show Post-inicializado Pre-Inicialización Ventana movida Ventana redimensionada Ítem: cambio de seleccionado

Marco

On close Post-inicializado Pre-Inicialización Pre-vista cerrada Vista activada Vista añadida Vista cerrada

ViewFlow

Acción disparada Drop finalizado Gana foco On hide On show Pierde foco Post-inicializado Pre-Inicialización Ratón: botón doble-click Ratón: botón pulsado Ratón: botón soltado Ratón: movimiento Tecla pulsada Tecla soltada Timer Ventana movida Ventana redimensionada Ítem: cambio de seleccionado Ítem: activado Ítem: simple-click Ítem: doble-click

Informe

Las señales de los informes solamente serán funcionales cuando estos generen interfaz, es decir, en su presentación preliminar. Acción disparada On hide On show Post-inicializado Pre-inicialización Ventana movida Ventana redimensionada.

Alternador de lista

Acción disparada On hide On show Post-inicializado Pre-inicialización Timer Ventana movida Ventana redimensionada Ítem: activado Ítem: cambio de seleccionado Ítem: doble clic Ítem: simple clic

Formulario QML

Acción disparada Gana foco On hide On show Pierde foco Post-inicializado Pre-inicialización Tecla pulsada Tecla soltada Timer Ventana movida Ventana redimensionada

Lista QML

Acción disparada Gana foco On hide On show Pierde foco Post-inicializado Pre-inicialización Tecla pulsada Tecla soltada Timer Ventana movida Ventana redimensionada Ítem: activado Ítem: cambio de seleccionado

Rejilla avanzada

Acción disparada Gana foco On hide On show Pierde foco Post-inicializado Pre-inicialización Tecla pulsada Tecla soltada Ventana movida Ventana redimensionada Ítem: cambio de seleccionado Ítem: doble click Ítem: simple click

Es en estas señales de edición pre-aceptada y pre-cancelada donde podremos utilizar el comando de instrucción , ya que en este punto la edición sigue activa.

Solamente funcional en el control . El manejador de evento asociado a la conexión se disparará cuando comience la carga de una página.

Las señales pueden ser leídas en los para ampliar información sobre su uso.

set retorno proceso = NO
visor html
manejadores de eventos
marco