CAPSLOCK SIEMPRE ENCENDIDO !!!

HMG en Español

Moderator: Rathinagiri

Post Reply
User avatar
CarlosRD
Posts: 63
Joined: Thu Jan 31, 2013 9:20 pm
Location: Orizaba, México

CAPSLOCK SIEMPRE ENCENDIDO !!!

Post by CarlosRD »

HOLA A TODOS:
COMO PUEDO HACER PARA QUE EL CAPSLOCK SIEMPRE ESTE ENCENDIDO???
SALUDOS.

***************************

HI ALL,
HOW CAN I DO TO SET CAPSLOCK ALLWAYS ON???
REHARDS.
Todo en el Nombre de Jesus / All in the name of Jesus
Carlos RD
User avatar
Pablo César
Posts: 4059
Joined: Wed Sep 08, 2010 1:18 pm
Location: Curitiba - Brasil

CAPSLOCK SIEMPRE ENCENDIDO !!!

Post by Pablo César »

Hola Carlos,

Creo que lo mejor es controlar en los elementos através de funciones de verificacion. Normalmente o TEXBOX, por ejemplo tienen la opcion de aceptar máscaras como eram hecha en Clipper que permite la digitacion en mayusculas. Y tambien puedes implementar una funcion de verificacion "pos-get" vamos decir para convertir en mayusculas con la funcion UPPER.

El capLock, solo se puede llamar (encenderlo) pero no garante que el usuário venga a pressionarlo nuevamente e quedar en minusculas. Sigue una funcion para llamar el CapsLock:

Code: Select all

#include "hmg.ch"

#define HB_VK_INSERT         0x2D
#define HB_VK_CAPITAL        0x14
#define HB_VK_NUMLOCK        0x90
#define HB_VK_SCROLL         0x91

Function Main()
MsgStop("Mantega apagados el CapsLock y el NumLock","Atencion")
PRESSKEY(HB_VK_CAPITAL)
MsgInfo("CapsLock prendido !")
PRESSKEY(HB_VK_NUMLOCK)
MsgInfo("NumLock prendido !")
RETURN

#pragma begindump

#include <shlobj.h>
#include <windows.h>
#include "hbapi.h"

HB_FUNC( PRESSKEY )

{

 BYTE keyState[256];

 GetKeyboardState((LPBYTE)&keyState);

 if (keyState[hb_parni(1)] == 0)  // testa se a tecla est  ativa

    {

    // Simula pressionamento

     keybd_event( hb_parni(1),
                  0x45,
                  KEYEVENTF_EXTENDEDKEY | 0,
                  0 );

     keybd_event( hb_parni(1),
                  0x45,
                  KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,
                  0 );
    }

}

#pragma enddump
El código-ejemplo fué extraído en: http://www.pctoledo.com.br/forum/viewto ... 743#p38743
HMGing a better world
"Matter tells space how to curve, space tells matter how to move."
Albert Einstein
User avatar
CarlosRD
Posts: 63
Joined: Thu Jan 31, 2013 9:20 pm
Location: Orizaba, México

Re: CAPSLOCK SIEMPRE ENCENDIDO !!!

Post by CarlosRD »

Pablo César wrote:Hola Carlos,

Creo que lo mejor es controlar en los elementos através de funciones de verificacion. Normalmente o TEXBOX, por ejemplo tienen la opcion de aceptar máscaras como eram hecha en Clipper que permite la digitacion en mayusculas. Y tambien puedes implementar una funcion de verificacion "pos-get" vamos decir para convertir en mayusculas con la funcion UPPER.

El capLock, solo se puede llamar (encenderlo) pero no garante que el usuário venga a pressionarlo nuevamente e quedar en minusculas. Sigue una funcion para llamar el CapsLock:
gracias Pablo César:

coincido contigo, en cualquier momento el usuario final puede presionar la tecla CAPSLOCK y desactivarla, pero intento hacer en mi aplicación que el mismo usuario final no tenga ningún contratiempo.

he incluido en mi aplicación la función que me pasaste y FUNCIONO PERFECTO para mi propósito.

otra vez, GRACIAS.
Todo en el Nombre de Jesus / All in the name of Jesus
Carlos RD
User avatar
danielmaximiliano
Posts: 2646
Joined: Fri Apr 09, 2010 4:53 pm
Location: Argentina
Contact:

Re: CAPSLOCK SIEMPRE ENCENDIDO !!!

Post by danielmaximiliano »

Pablo César wrote:Hola Carlos,

Creo que lo mejor es controlar en los elementos através de funciones de verificacion. Normalmente o TEXBOX, por ejemplo tienen la opcion de aceptar máscaras como eram hecha en Clipper que permite la digitacion en mayusculas. Y tambien puedes implementar una funcion de verificacion "pos-get" vamos decir para convertir en mayusculas con la funcion UPPER.
Gracias por compartir Pablo..
*´¨)
¸.·´¸.·*´¨) ¸.·*¨)
(¸.·´. (¸.·` *
.·`. Harbour/HMG : It's magic !
(¸.·``··*

Saludos / Regards
DaNiElMaXiMiLiAnO

Whatsapp. := +54901169026142
Telegram Name := DaNiElMaXiMiLiAnO
Post Reply