teclado raw_input por numero introducir ingresar fecha eyed3 datos comando capturar python windows

raw_input - Cambiar bloqueos de teclado en Python



python input() (5)

En Linux, aquí hay un programa Python para encender y apagar todos los LED del teclado:

import fcntl import os import time KDSETLED = 0x4B32 SCR_LED = 0x01 NUM_LED = 0x02 CAP_LED = 0x04 console_fd = os.open(''/dev/console'', os.O_NOCTTY) all_on = SCR_LED | NUM_LED | CAP_LED all_off = 0 while 1: fcntl.ioctl(console_fd, KDSETLED, all_on) time.sleep(1) fcntl.ioctl(console_fd, KDSETLED, all_off) time.sleep(1)

¿Hay alguna forma, en Python, de cambiar mediante programación los estados de BLOQ MAYÚS / BLOQUEO NUMERO / BLOQUEO DE DESPLAZAMIENTO?

Esto no es realmente una pregunta de broma, es más como una pregunta real para un programa de broma. Tengo la intención de usarlo para hacer que las luces hagan cosas divertidas ...


Para establecer BLOQ MAYÚS en un valor específico mediante SendKeys, es importante detectar primero el estado de BLOQUEO CAPS. Aquí se explica cómo hacerlo en Python (bajo Windows):

import win32api,win32con def IsCapsLockOn(): # return 1 if CAPSLOCK is ON return win32api.GetKeyState(win32con.VK_CAPITAL)


Para ventanas:

#https://.com/questions/21549847/send-key-combination-with-python #https://msdn.microsoft.com/en-us/library/8c6yea83(v=vs.84).aspx import win32com.client as comclt wsh= comclt.Dispatch("WScript.Shell") wsh.SendKeys("abc") #types out abc directly into wherever you have your cursor (ex: right into this editor itself!) wsh.SendKeys("{NUMLOCK}{CAPSLOCK}{SCROLLLOCK}") #toggles the state of NumLock, CapsLock, and ScrollLock; remove whichever one you don''t want to toggle

Fuentes:

  1. Combinación de teclas enviar con python
  2. https://msdn.microsoft.com/en-us/library/8c6yea83(v=vs.84).aspx

Además, preste mucha atención a la respuesta de Uri sobre cómo leer el estado de Bloqueo de mayúsculas. Para establecer un estado de LED específicamente en verdadero o falso, no puede simplemente alternar a ciegas, primero debe saber cuál es el estado actual. Te muestra cómo leer el estado de bloqueo de mayúsculas. Aquí está cómo leer los 3 estados del LED:

#https://.com/questions/854393/change-keyboard-locks-in-python/854442#854442abc #https://support.microsoft.com/en-us/kb/177674 import win32api,win32con def isCapsLockOn(): "return 1 if CapsLock is ON" return win32api.GetKeyState(win32con.VK_CAPITAL) def isNumLockOn(): "return 1 if NumLock is ON" return win32api.GetKeyState(win32con.VK_NUMLOCK) def isScrollLockOn(): "return 1 if ScrollLock is ON" return win32api.GetKeyState(win32con.VK_SCROLL) print("IsCapsLockOn = ", IsCapsLockOn()) print("isNumLockOn = ", isNumLockOn()) print("isScrollLockOn = ", isScrollLockOn())


Probablemente no sea útil para el OP, pero vale la pena compartirlo, ya que alguien podría estar buscando la respuesta tal como estaba, pero no podría encontrar la solución sin utilizar módulos de terceros. Esto es lo que hice para activar el bloqueo de mayúsculas.

import ctypes def turn_capslock(): dll = ctypes.WinDLL(''User32.dll'') VK_CAPITAL = 0X14 if not dll.GetKeyState(VK_CAPITAL): dll.keybd_event(VK_CAPITAL, 0X3a, 0X1, 0) dll.keybd_event(VK_CAPITAL, 0X3a, 0X3, 0) return dll.GetKeyState(VK_CAPITAL) print(turn_capslock())