有没有办法用pynput引用python中的backspace?

2024-04-28 09:36:19 发布

您现在位置:Python中文网/ 问答频道 /正文

大家好,我想知道是否有任何方法来引用我的项目退格,我想做的人如果按下'a'然后删除它,并键入'ree'有人能帮我这个吗?你知道吗

代码:

from pynput import keyboard
from pynput.keyboard import Key, Controller

COMBINATIONS = [
    {keyboard.KeyCode(char='a')}
]

current = set()

def execute():
    keyboard = Controller()
    if keyboard.on_press('a'):
        *insert code here*
    keyboard.type('ree')

def on_press(key):
    if any([key in COMBO for COMBO in COMBINATIONS]):
        current.add(key)
        if any(all(k in current for k in COMBO) for COMBO in COMBINATIONS):
            execute()


def on_release(key):
    if any([key in COMBO for COMBO in COMBINATIONS]):
        current.remove(key)

with keyboard.Listener(on_press=on_press, on_release=on_release) as listener:
    listener.join()

Tags: keyinfromforreleaseifondef
1条回答
网友
1楼 · 发布于 2024-04-28 09:36:19

要覆盖一个字母,您可以发送'\b',它会将光标向后移动一个字母。随后的信件会写在上面。你知道吗

from pynput.keyboard import Listener, Controller
from pynput import keyboard

key_ctrl = Controller()

def on_press(key):
    if key == keyboard.Key.esc:
        return False
    elif key == keyboard.KeyCode.from_char('a'):
        key_ctrl.type('\bree')

with Listener(on_press=on_press) as listener:
    listener.join()

相关问题 更多 >