AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Funciones estándar / Funciones de Windows / Funciones varias de Windows
  • To manage all the keyboard keys with KeyPressed:
  • Testing a key combination
  • Interrupting a process in a browse loop
  • Asynchronous status report
  • Using the KeyPressed function
WINDEV
WindowsLinuxJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac Catalyst
Otros
Procedimientos almacenados
Checks which key is pressed.
Ejemplo
// Include the "KeyConst.wl" file to manage the keyboard keys
EXTERN "KeyConst.WL"
FOR I = 1 TO 5000
	HourGlass(True)
	Multitask(-1)
	// Check Space key
	IF KeyPressed(VK_SPACE) = True THEN Info("Space key down")
	// Check A key
	IF KeyPressed(Asc("A")) = True THEN Trace("A key down")
END
HourGlass(False)
Sintaxis
<Result> = KeyPressed(<Constant> [, <Change of status>])
<Result>: Boolean
  • True if the control key is pressed or if its status changed since the last call to KeyPressed,
  • False otherwise.
Java Specific operating mode:
  • True if the control key is currently pressed,
  • False otherwise.
<Constant>: Integer constant
Identifies the control key:
kpAltAlt key.
kpControlCtrl key.
kpEscapeEsc key.
kpLButtonLeft mouse button.
Java This constant is not available.
kpRButtonRight mouse button.
Java This constant is not available.
kpShiftShift key.

Additional constants are available in the "KeyConst.wl" file. These constants are used to identify all the keyboard keys. This file is available in the WINDEV "Personal\External" subdirectory.
<Change of status>: Optional boolean
  • True (default) for synchronous reporting: key currently pressed,
  • False to obtain an asynchronous report: the key has changed state since the last call to the function KeyPressed.
Java This parameter is ignored. The status code is always synchronous.
Observaciones

To manage all the keyboard keys with KeyPressed:

  1. Include the KeyConst.WL file in your project. This file associates a specific constant with each keyboard key. This file is available in the \Personal\Extern directory of WINDEV. To include this file in your applications, you need to use the EXTERN keyword as follows:
    EXTERN "KEYCONST.wl"
  2. Use the constants in KeyPressed:
    IF KeyPressed(VK_Space) THEN...
Remarks:
  • To manage character keys, simply use the ASCII code of that character (returned by Asc).
  • All the constants found in the KeyConst.WL file start with the letters VK_. These constants are displayed by the code completion in the code editor from the moment the file has been integrated with the EXTERN keyword.

Testing a key combination

To run the test of a key combination, run the test of two keys pressed:
IF KeyPressed(kpShift) AND KeyPressed(VK_TAB) THEN
	Trace("OK")
END

Interrupting a process in a browse loop

In a loop, to interrupt the process by pressing Esc, Multitask must be called before KeyPressed.
Example:
HReadFirst(Customer, CustNum)
WHILE HOut() = False
	// Abandon via Esc?
	Multitask(-1) 
	IF KeyPressed(kpEscape) = True THEN BREAK
	// Process
	HReadNext(Customer, CustNum)
END

Asynchronous status report

To avoid retrieving a key that was pressed beforehand (in another process for example), the status of the key to test must be reinitialized by the following line of code:
KeyPressed(<Key>, False)
Java

Using the KeyPressed function

The application must have focus for KeyPressed to check whether the specified key is pressed.
Componente: wd300std.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 27/03/2025

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