Saltar al contenido principal
Versión: 20 R7 BETA

Is waiting mouse up

Is waiting mouse up : Boolean

ParámetroTipoDescripción
ResultadoBooleanTrue si el objeto está esperando por un evento mouse up, de lo contrario False

Este comando no es hilo seguro, no puede ser utilizado en código apropiativo.

Descripción

Tema: Eventos formulario

El comando Is waiting mouse up devuelve True después de que el objeto actual haya hecho clic y el botón del ratón no se ha liberado, y cuando el diálogo aún tiene el foco. Debe llamarse desde el método de objeto del objeto actual.

El comando devuelve False en los siguientes casos:

  • no se llama a partir de un método de objeto
  • o no se disparó el evento On Clicked en el objeto
  • o la caja de diálogo ha perdido el foco.

Este comando debe ser utilizado junto con . Le permite sincronizar el estado interno del objeto de formulario con la aplicación global. Básicamente, permite a su código manejar el caso donde el usuario hizo clic y empezó a mover algo dentro de una imagen objeto de formulario, y esta acción es interrumpida por un evento externo, como un cuadro de diálogo de alerta. En este caso, el estado interno del objeto puede ser suspendido de forma indefinida debido a que se espera un evento mouse up que no ocurrirá. Para abordar este problema, debe proteger el código de movimiento del ratón con un comando Is waiting mouse up lo que le asegura que es ejecutado en un contexto válido.

Ejemplo

El siguiente código se puede utilizar para administrar una función de seguimiento del ratón en un objeto imagen:

  //Método de objeto del objeto imagen
 var vLtracking : Integer //indicador para el modo de seguimiento

Case of
:(Form event code=On Clicked)
 If(Is waiting mouse up) //el botón del ratón aún no se suelta
    vLtracking:=1 //estamos en modo de seguimiento
  //... Escriba aquí el código de inicialización para la función de seguimiento
 End if
:(Form event code=On Mouse Move)
 If(vLtracking=1) //estamos en modo de seguimiento
    If(Not(Is waiting mouse up)) //nunca tendremos el ratón hacia arriba
       vLtracking:=0 //detiene el modo de seguimiento
  //... Escriba aquí el código para manejar o cancelar la acción de seguimiento del usuario
    Else //el objeto todavía está esperando un ratón hacia arriba
  //... Escriba aquí el código para el seguimiento
    End if
 End if
:(Form event code=On Mouse Up) //se soltó el botón del ratón
  //... Escriba aquí el código para completar la acción de seguimiento
 vLtracking:=0 //fin del modo de seguimiento
End case


Ver también

Form event code