在Python中,有没有办法以编程方式更改CAPS LOCK/NUM LOCK/SCROLL LOCK状态?
这不是一个真正的笑话问题--更像是一个真正的笑话程序的问题。我打算用它来让灯光做一些有趣的事情。
发布于 2009-05-12 19:28:17
如果你使用的是windows,我相信你可以使用SendKeys来实现这一点。
http://www.rutherfurd.net/python/sendkeys
import SendKeys
SendKeys.SendKeys("""
{CAPSLOCK}
{SCROLLOCK}
{NUMLOCK}
""")
发布于 2009-05-13 16:32:24
在Linux上,这是一个Python程序,可以让所有的键盘LED闪烁:
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)
发布于 2017-09-02 17:24:45
可能对OP没有用处,但值得分享,因为有人可能像我一样寻找答案,但如果不使用第三方模块就找不到解决方案。这就是我打开大写锁的方法。
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())
https://stackoverflow.com/questions/854393
复制相似问题