Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

on/off del led de CapsLock

Estas en el tema de on/off del led de CapsLock en el foro de Visual Basic clásico en Foros del Web. Hola a todos, alguien sabe como lograr esto? encender y apagar los tres leds de un teclado directamente de codigo de VB? me refiero al ...
  #1 (permalink)  
Antiguo 16/06/2006, 23:15
 
Fecha de Ingreso: junio-2006
Mensajes: 2
Antigüedad: 17 años, 10 meses
Puntos: 0
on/off del led de CapsLock

Hola a todos, alguien sabe como lograr esto? encender y apagar los tres leds de un teclado directamente de codigo de VB? me refiero al Caps Lock, Num Lock y Scroll Lock
  #2 (permalink)  
Antiguo 17/06/2006, 05:22
 
Fecha de Ingreso: diciembre-2003
Mensajes: 190
Antigüedad: 20 años, 5 meses
Puntos: 0
En un formulario añade 3 botones (cmdToggle, cmdTurnOff, cmdTurnOff) y una etiqueta y añade este codigo al formulario





Public Const VK_CAPITAL = &H14


Public Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type

Public kbArray As KeyboardBytes


Public Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Long


Public Declare Function GetKeyboardState Lib "user32" (kbArray As KeyboardBytes) As Long


Public Declare Function SetKeyboardState Lib "user32" (kbArray As KeyboardBytes) As Long






Private Function CapsLock() As Integer
CapsLock = GetKeyState(VK_CAPITAL) And 1 = 1
End Function


Private Sub Form_Load()
If CapsLock() = 1 Then Label1 = "On" Else Label1 = "Off"
End Sub


Private Sub cmdToggle_Click()
GetKeyboardState kbArray
kbArray.kbByte(VK_CAPITAL) = IIf(kbArray.kbByte(VK_CAPITAL) = 1, 0, 1)
SetKeyboardState kbArray
Label1 = IIf(CapsLock() = 1, "On", "Off")
End Sub


Private Sub cmdTurnOn_Click()
GetKeyboardState kbArray
kbArray.kbByte(VK_CAPITAL) = 1
SetKeyboardState kbArray
Label1 = IIf(CapsLock() = 1, "On", "Off")
End Sub


Private Sub cmdTurnOff_Click()
GetKeyboardState kbArray
kbArray.kbByte(VK_CAPITAL) = 0
SetKeyboardState kbArray
Label1 = IIf(CapsLock() = 1, "On", "Off")
End Sub

  #3 (permalink)  
Antiguo 17/06/2006, 07:49
Avatar de vbx3m  
Fecha de Ingreso: febrero-2005
Ubicación: Venezuela
Mensajes: 524
Antigüedad: 19 años, 3 meses
Puntos: 1
En las FAQ´S aparece...
__________________
ホルヘ・ラファエル・マルティネス・レオン
  #4 (permalink)  
Antiguo 17/06/2006, 08:46
 
Fecha de Ingreso: junio-2006
Mensajes: 2
Antigüedad: 17 años, 10 meses
Puntos: 0
si vi el ejemplo en las FAQs pero me regresa un error en la tercera linea de cada funcion, estoy utilizando visual studio 2005
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:43.