我正在使用一个在按下 Caps Lock 键时激活的 python 程序,我希望能够在程序处于活动状态时打开/关闭大写锁定状态。
我尝试使用 virtkey 发送密钥,但它显然不起作用,因为密钥只是激活应用程序并且不会更改大写锁定状态。那么用python实现这一目标的最佳方法是什么?
我正在使用 Ubuntu
在 Linux 上:
import fcntl
import os
KDSETLED = 0x4B32
console_fd = os.open('/dev/console', os.O_NOCTTY)
# Turn on caps lock
fcntl.ioctl(console_fd, KDSETLED, 0x04)
# Turn off caps lock
fcntl.ioctl(console_fd, KDSETLED, 0)
资料来源:Benji York - 堆栈内存溢出:在 Python 中更改键盘锁
在 Windows 上:
您应该能够为此使用SendKeys,如下例所示:
import SendKeys
SendKeys.SendKeys("""
{CAPSLOCK}
""")
用于sendkeys
更改状态和keyboardleds
更改 LED 指示灯。
import SendKeys
SendKeys.SendKeys("""
{CAPSLOCK}
{SCROLLOCK}
{NUMLOCK}
""")
该软件包似乎仅适用于 POSIX(如果您使用的是 Ubuntu,则可以),您可以在此处阅读更多信息。