我正在尝试使用pynput库编写一个程序,它可以跟踪用户的按键,当用户按下一个特殊的字符键时:#我的程序将在按下另一个键之后立即按下另一个键。例如,当用户按下$符号时,程序将紧接着按向左键,光标将在$符号后面移动一个字符。我的问题是,在输入$符号时,用户按SHIFT +5,在大多数情况下,用户只释放数字键,而shift键保持按下。在这种情况下,当我的程序按下向左键,插入只按向左键,按下SHIFT +向左键,这导致标记字符而不是向左移动。我想知道是否可以忽略用户密钥或以某种方式覆盖它。感谢您的帮助。谢谢
from pynput.keyboard import Key, Listener, Controller
import re
keyboard = Controller()
REGEX = re.compile('[@_!#$%^&*()<>?/\|}{~:]')
def on_press(key):
try:
if key != Key.left:
if REGEX.search(key.char) != None:
keyboard.press(Key.left)
keyboard.release(Key.left)
print("I pressed left for you")
else:
print("Nothing")
except Exception as e:
print(e)
with Listener(on_press=on_press) as listener:
listener.join()
转载请注明出处:http://www.qxdxgs.com/article/20230526/1248399.html