首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Python中更改键盘锁

在Python中更改键盘锁
EN

Stack Overflow用户
提问于 2009-05-12 19:19:37
回答 5查看 11K关注 0票数 21

在Python中,有没有办法以编程方式更改CAPS LOCK/NUM LOCK/SCROLL LOCK状态?

这不是一个真正的笑话问题--更像是一个真正的笑话程序的问题。我打算用它来让灯光做一些有趣的事情。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-05-12 19:28:17

如果你使用的是windows,我相信你可以使用SendKeys来实现这一点。

http://www.rutherfurd.net/python/sendkeys

代码语言:javascript
复制
import SendKeys

SendKeys.SendKeys("""
{CAPSLOCK}
{SCROLLOCK}
{NUMLOCK}
""")
票数 14
EN

Stack Overflow用户

发布于 2009-05-13 16:32:24

在Linux上,这是一个Python程序,可以让所有的键盘LED闪烁:

代码语言:javascript
复制
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)
票数 17
EN

Stack Overflow用户

发布于 2017-09-02 17:24:45

可能对OP没有用处,但值得分享,因为有人可能像我一样寻找答案,但如果不使用第三方模块就找不到解决方案。这就是我打开大写锁的方法。

代码语言:javascript
复制
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())
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/854393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档