Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   Tecla Caps Lock (https://www.clubdelphi.com/foros/showthread.php?t=4568)

AryEl 20-10-2003 20:42:18

Tecla Caps Lock
 
hola a todos:

Necesito saber si hay alguna forma de saber si esta activa o no la tecla de caps lock, y en caso de no estarlo, como la activo ?? Gracias....

roman 20-10-2003 21:21:45

Este par de funciones te pueden servir:

Código:

// Determina si está activa
function CapsOn: Boolean;
var
  KeyState: Integer;

begin
  KeyState := GetKeyState(VK_CAPITAL);
  Result := (KeyState and $01) <> 0;
end;

// Intercambia entre acitiva e inactiva
procedure Toggle;
begin
  Keybd_Event(VK_CAPITAL, 0, KEYEVENTF_EXTENDEDKEY, 0);
  Keybd_Event(VK_CAPITAL, 0, KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP, 0);
end;

Creo que no hay una forma directa de activarla o desactivarla, sólo de intercambiar el estado de manera que para activarla (sin desactivarla en el caso de que ya estuviera activa) tendrías que hacer:

Código:

if not CapsOn then Toggle;
// Saludos


La franja horaria es GMT +2. Ahora son las 08:43:27.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi