当两个shift键按下一秒钟时,我正在尝试切换大写锁定开/关。我尝试过使用virtkey模块,但它不起作用。不过,该模块确实适用于其他键,所以我认为我没有错误地使用该模块。
有谁有办法做到这一点吗?
为了清楚起见,我想实际切换大写锁定开/关,而不仅仅是LED。
谢谢!
发布于 2010-03-01 08:16:46
这对我是有效的(打开和关闭led以及启用/禁用上限)
import virtkey
v = virtkey.virtkey()
v.press_keycode(66)
v.release_keycode(66) # first release doesn't release it
v.release_keycode(66)下面是更多的例子
v.press_keycode(66) # turns capslock on
v.release_keycode(66)
v.press_keycode(66) # turns capslock off
v.release_keycode(66)您还可以使用release_keycode获得类似于切换的行为
v.release_keycode(66) # toggles capslock
v.release_keycode(66) # toggles back again capslock发布于 2010-03-01 07:46:49
有趣的是。我在解释器中试了试virtkey,它似乎起作用了。在调用press_keycode(50)之后,我的机器就像按下了caps lock (Ubuntu9.10,python-virtkey .50ubuntu2)。如果我释放这个键-- release_keycode(50)- -它就像什么都没发生一样。
import virtkey
v = virtkey.virtkey()
v.press_keycode(50)如果作为脚本运行,则保留按下虚拟端子选项卡的caps键。非常烦人。
您研究过xvkbd命令吗?它是一个带有命令行选项的X虚拟键盘,最坏的情况是你可以从python中调用它。另一个值得研究的想法是xmodmap,它允许您在X中重新映射键。有关示例,请参阅SU上的this post。
https://stackoverflow.com/questions/2353112
复制相似问题