4D v14

Eventos

Inicio

 
4D v14
Eventos

Eventos    


 

 

Además de las manipulaciones explicadas en el vídeo, también debe tener en cuenta que:

No todos los objetos tienen los mismos eventos: por ejemplo, no se puede seleccionar el evento "On Data Change" para un botón, ya que no puede "entrar" en su contenido (título).

Estos son algunos ejemplos:

  • On Mouse Enter
    Cuando el ratón entra en el "espacio aéreo" de un objeto.
  • On Data Change
    A la salida de un campo o una variable cuyo contenido ha cambiado.
    Esto se utiliza sobre todo para los controles de entrada, formato (mayúsculas y minúsculas), búsquedas, re cálculos.
  • On Clicked
    Cuando se hace clic en un objeto (principalmente botones, pop-ups, menús, etc.)
    También se pueden utilizar en objetos editables.
  • On Getting Focus
    El objeto acaba de recibir el foco (de On Clicked, se utiliza con la tecla tab o por programación).
  • On Load
    Justo antes de que un formulario se muestre en la pantalla o se utilice durante una impresión.
    Durante este evento generalmente se realiza la inicialización.
  • On Printing Detail
    Durante la impresión de registros.
    Permite, por ejemplo, definir un valor para las variables de total, concatenación.

Esta lista le ayudará a entender los eventos. Puede consultar la documentación de 4D para obtener una descripción completa de los eventos.

Hay un detalle importante que los  usuarios nuevos siempre preguntan: “¿Debo seleccionar los eventos de formulario o los eventos de objetos?” La respuesta es simple: todo depende de dónde va a crear su método.
El método formulario, en teoría, sólo debe contener lo que es relevante para procesar todo el formulario:

  • redimensionamiento
  • llamada exterior
  • visualización/ocultar objetos
  • etc.

Mientras que los métodos objeto deben contener lo que es específico a cada objeto  (botón, campo, etc.) Esa es la regla general y usted debe tener varias buenas razones antes de considerar romperla.

Recuerde:

  • Método formulario: centralizado, procesamiento global, fácil mantenimiento.
    Riesgo de ser ejecuto con más frecuencia de lo necesario.
  • Método objeto: específico, adaptado, ejecutado sólo cuando es necesario.
    Permite fácilmente mover un objeto utilizando copiar y pegar (sobre si utiliza punteros).
    Obliga a duplicar el método o llamar al método en cada objeto.

Lo que ocurre es que movemos ciertos procesos en el método formulario.

Por ejemplo, debe recalcular un valor en función de 10 parámetros editables. Para cada parámetro modificado, debe volver a realizar el cálculo. En lugar de poner la fórmula (o llamada de método) en cada uno de los 10 campos parámetros, es posible mover este cálculo en el método formulario.

En este caso, es más fácil y centralizado, sin embargo, es muy probable que el nuevo cálculo se efectúe con más frecuencia de lo necesario, especialmente durante la modificación de un área que no figura en el cálculo final.  (Nota: 4D permite saber cuál fue el objeto modificado para que podamos adaptar el cálculo de acuerdo con esta información).

Es importante saber el orden en que los eventos se ejecutan. Por ejemplo, para un botón, los eventos se ejecutan en el siguiente orden:

  • On Mouse Enter
  • On Mouse Move
  • On Getting Focus
  • On Clicked (if any)
  • On Mouse Leave
  • On Losing Focus

Un campo o una variable en donde se haga clic:

  • On Mouse Enter
  • On Mouse Move
  • On Getting Focus
  • On Data Change (if any)
  • On Losing Focus
  • On Mouse Leave

Para ahorra tiempo al escribir su código y hacerlo más confiable, recuerde configurar macros (archivo “macros.xml”).

Por ejemplo, puede crear una macro que escriba el siguiente código cuando digite “#$evt” en su método:

 $evt:=Form event
 Case of
    :($evt=On Data Change)
 
    :($evt=On Load)
 
 End case

Mientras esté aprendiendo a utilizar 4D, le recomendamos empezar por poner sus métodos en sus objetos, tendrá más flexibilidad para la actualización. Luego, comience por utilizar las llamadas de métodos genéricos y por último, cuando todo funcione correctamente, vea lo que puede pasar de los métodos objeto a su método formulario o métodos proyectos. A continuación, puede empezar a pasar punteros también.

Para ir más lejos:
Dé una buena mirada a cómo funcionan los eventos, ya que le permitirá entender exactamente cuándo ejecutar su programación. También encontrará una serie de ideas para dar poderosos primeros pasos utilizando eventos tales como:

  • On Drag Over
  • On Drop
  • On Selection Change
  • más los tres eventos ’On Mouse’ (Move, Leave, Enter)

y por supuesto los grandes clásicos:

  • On Clicked
  • On Double Clicked
  • On Long Click
  • etc.

 
 

 
PROPIEDADES 

Producto: 4D
Tema: Eventos

 
ARTICLE USAGE

Autoformación ( 4D v13)
Autoformación ( 4D v14)