... Assinatura do site por 3 anos + Kit MontaRibbons + 3 Livros em PDF + Diversas Revistas (pdf) de brinde, por apenas R$182,00
(
podendo parcelar em até 10 vezes no cartão de crédito)...

Clique aqui e obtenha mais detalhes do nosso kit completo e de como comprar.


Ativar/desativar por código, as teclas Num Lock, Caps Lock e Scroll Lock

Com a API GetKeyState() é possível identificar o status de cada uma das teclas Num Lock, Caps Lock e Scroll Lock.  Para isso, basta informar o código correspondente ao da tecla na API e obter como resultado o valor 0 ou 1.  O valor 0 indica que a tecla está desativada (Led apagado) e o valor 1 que a tecla está ativada (Led aceso).

Valores das teclas:

Num Lock = 144 ou pode fazer ser uso da constante vbKeyNumlock.
Caps Lock =  20 ou pode fazer ser uso daconstante vbKeyCapital.
Scroll Lock = 145

Option Compare Database
#If VBA7 Then
   'versões 2010 e 2013
   Public Declare PtrSafe Function GetKeyState Lib "user32"(ByVal nVirtKey As Long) As Long
#Else
   'versões 2007 e anteriores
   Public Declare Function GetKeyState Lib "user32"(ByVal nVirtKey As Long) As Long
#End if
 
--------------------------------------------------------------------------------------
Public Sub fncAtivarDesativarTecla(Tecla&, Ativar As Boolean)
Dim ws As Object
Dim T$
Set ws = CreateObject("WScript.shell")
 
T = switch(Tecla=144,"{numlock}",Tecla=20,"{capslock}",Tecla= 145,"{scrolllock}")
If Ativar Then
   'Ativar tecla que se encontra desativada
   If GetKeyState(Tecla) = 0 Then ws.SendKeys T
Else
   'Desativar tecla que se encontra ativada
   If GetKeyState(Tecla) = 1 Then ws.SendKeys T
End If
Set ws = Nothing
End Sub

Para ativar a tecla Caps Lock:  Call fncAtivarDesativarTecla (20, true)

Para desativar a tecla Scroll Lock:  Call fncAtivarDesativarTecla (145, false)

Bom estudo!


 

 


Não há comentário

Envie seu comentário: