有没有一种方法可以简单地为箭头键编写一个按键代码,而不是使用我在python中的self.direction命令?

ukqbszuj  于 2022-12-21  发布在  Python
关注(0)|答案(1)|浏览(126)

这是我进口的

from src.common import config, settings, utils
import time
import math
from src.routine.components import Command
from src.common.vkeys import press, key_down, key_up

这是我目前唯一能编码按键的方法,因为我试过按(键.左,1,上_时间=0.05)按(键.左_箭头,1,上_时间=0.05)等。
我只是编码一个基本的机器人练习,因为我是新的编码atm。
这是唯一成功的方法,我能够编码一个按键左或右-通过要求一个自我输入(使用self.direction),但我实际上喜欢物理编码一个。

class Combo(Command):
    """Uses 'Hunting Decree' once."""

    def __init__(self, direction):
        super().__init__(locals())
        self.direction = settings.validate_arrows(direction)
        
        
    def main(self):
        key_down(self.direction)
        if self.direction == 'left':
#            key_up(self.direction)
            press(Key.GALE, 1, up_time=0.05)
            time.sleep(0.25)
            press(Key.STONE, 1, up_time=0.05)
            time.sleep(0.5)
        
        else:
#            key_up(self.direction)
            press(Key.GALE, 1, up_time=0.05)
            time.sleep(0.25)
            press(Key.STONE, 1, up_time=0.05)
            time.sleep(0.5)
        key_up(self.direction)
        time.sleep(0.25)

尝试了不同形式的编码在按键,但没有工作,但自我。命令

3pmvbmvn

3pmvbmvn1#

在Python中,你可以使用pyautogui模块来模拟按键事件。2 pyautogui模块有一个press函数,可以用来模拟按键事件。
要模拟按下箭头键,可以将press函数与适当的键代码配合使用。例如,要模拟按下左箭头键,可以使用以下代码:

import pyautogui

# Simulate a press of the left arrow key
pyautogui.press('left')

同样,可以使用向右键、向上键和向下键模拟相应箭头键的按下事件。
下面是如何使用pyautogui模块在一行中模拟多个箭头键按下事件的示例:

import pyautogui

# Simulate a press of the up arrow key
pyautogui.press('up')

# Simulate a press of the right arrow key
pyautogui.press('right')

# Simulate a press of the down arrow key
pyautogui.press('down')

# Simulate a press of the left arrow key
pyautogui.press('left')

相关问题