AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Ayuda / Tutorial WINDEV / Tutorial - Base de datos externa
  • Esta lección abarcará los siguientes temas
  • Introducción
  • Ejemplo práctico
  • Eventos opcionales disponibles en WINDEV
  • Eventos de Windows
  • Ejemplo : Detectar el clic en un control List Box
Lección 7.5. Evento de Windows
Esta lección abarcará los siguientes temas
  • Programación de eventos de Windows.
Duración de la lección

Tiempo estimado: 10 min
Lección anteriorTabla de contenidoSiguiente lección
Introducción
Cada acción realizada por Windows corresponde a un evento de Windows. Pueden ocurrir diferentes tipos de eventos, por ejemplo:
  • El cursor pasa por encima de una ventana,
  • El sistema se detiene,
  • Se muestra una ventana de diálogo,
  • Un error de software,
  • Etc.
Cuando se producen estos eventos, es posible interceptarlos para preparar o ejecutar un proceso específico.
WINDEV puede gestionar automáticamente los eventos más comunes. Por ejemplo, los siguientes eventos están disponibles de forma predeterminada para los controles Campo de entrada:
  • Inicialización del control,
  • Entrada en el control,
  • Modificación del control,
  • Salida del control.
Para utilizar eventos adicionales, es posible:
  • utilizar los eventos opcionales disponibles en WINDEV.
  • utilizar los eventos de Windows.

Ejemplo práctico

La gestión de eventos se presentará a través del ejemplo unitario "The Event function".
  • Abra el ejemplo unitario "The Event function".
Eventos opcionales disponibles en WINDEV
WINDEV incluye varios eventos opcionales para cada elemento (ventana, control, etc.).
  • Para añadir un evento opcional:
    1. Abra los eventos WLanguage asociados al control List Box en la ventana del ejemplo unitario:
      • Seleccione el control List Box.
      • Presione F2.
      • El editor de código se abre.
    2. Haga clic en el enlace "Agregar otros eventos...":
      Enlace 'Agregar otros eventos'
    3. La lista completa de los eventos opcionales disponibles se abre:
      Lista de eventos opcionales
    4. Para añadir un evento, simplemente seleccione la casilla correspondiente y valide la ventana. Por ejemplo, agregue el evento "Tecla pulsada" y valide la ventana.
Eventos de Windows
Para añadir eventos más "específicos", puede utilizar la función Event de WLanguage. La función Event permite asociar un procedimiento WLanguage a un evento de Windows.

Nota

Para utilizar la función Event, debe estar familiarizado con la programación de Windows, especialmente con los eventos de Windows.

Para obtener la lista (no exhaustiva) de eventos de Windows, consulte Valor de las constantes de la API de Windows de 32 bits.

Ejemplo : Detectar el clic en un control List Box

  • Pruebe la ventana "WIN_Event_Function". Esta ventana detecta si el control List Box se manipula con el ratón o con el teclado.
    1. Haga clic en el control List Box.
    2. Use el ratón para mover la banda de selección.
    3. Un mensaje aparece indicando si se utilizó el ratón o el teclado.
      Prueba de la ventana
    4. Detenga la prueba y vuelva al editor.
  • Veamos el código utilizado:
    1. Haga clic en la ventana.
    2. Abra los eventos de la ventana (pulse F2).
    3. Veamos el evento "Declaraciones globales" de "WIN_Event_Function".
      • Primero, la siguiente línea de código:
        EXTERN "WINCONST.WL"
        Esta línea de código permite incluir el contenido del archivo WINCONST.WL en el código de la aplicación mediante la palabra clave EXTERN. Este archivo contiene la declaración y los valores de las constantes de Windows. Durante la compilación, el código del archivo WINCONST.WL se incluirá automáticamente en el código de la aplicación.
      • A continuación, se declaran todos los eventos admitidos:
        // Events on the LIST_Months control
        // Keyboard key down
        Event(MouseOrKeyboard, LIST_Months.FullName, WM_KEYDOWN)
        // Left mouse click
        Event(MouseOrKeyboard, LIST_Months.FullName, WM_LBUTTONDOWN)
        El procedimiento MouseOrKeyboard se llama cuando se utiliza el teclado en el control List Box (evento de Windows correspondiente: WM_KEYDOWN) o cuando se pulsa el botón izquierdo del ratón (evento de Windows correspondiente: WM_LBUTTONDOWN).
    4. El procedimiento MouseOrKeyboard es un procedimiento interno. El código de este procedimiento se encuentra justo después del evento "Declaraciones globales". Este código es muy sencillo:
      • Si se utiliza el teclado, el texto que aparece debajo del control List Box contiene "Selection with the keyboard".
      • Si se utiliza el ratón, el texto que aparece debajo del control List Box contiene "Selection with the mouse".
        INTERNAL PROCEDURE MouseOrKeyboard()
        // The _EVE.wMessage variable contains the message number
        SWITCH _EVE.wMessage
        // Keyboard
        CASE WM_KEYDOWN
        // Message indicating that the keyboard is used
        STC_SelectionType = "Selection with the keyboard"
        STC_SelectionType.Color = LightRed
         
        // It's the mouse
        CASE WM_LBUTTONDOWN
        // Message indicating that the mouse is used
        STC_SelectionType = "Selection with the mouse"
        STC_SelectionType.Color = LightBlue
        END
Lección anteriorTabla de contenidoSiguiente lección
Versión mínima requerida
  • Versión 28
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 14/11/2022

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