首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >按住pygame

按住pygame
EN

Stack Overflow用户
提问于 2017-08-08 22:54:18
回答 1查看 1.1K关注 0票数 1

在python2.7中,我使用pygame和pyautogui在屏幕上移动鼠标。我的代码看起来像这样:

代码语言:javascript
复制
    import pyautogui
    import pygame
    pygame.init()
    pygame.display.set_mode()
    loop = True
    while loop:

         for event in pygame.event.get():
                if event.type == pygame.quit:
                    pygame.quit()
                if event.type == pygame.KEYDOWN:
                    if event.key == pygame.K_a:
                        pyautogui.moveRel(-50,0)

当我按下"a“时,我的代码向左移动鼠标,但当我想要在屏幕上移动鼠标时,我必须重复按下按钮。有没有一种方法可以按住并在屏幕上移动鼠标?我看过关于这个主题的其他教程,但它们似乎非常特定于项目。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-08 22:59:24

基本上,您要做的是设置一个变量,指示键是否在keydown时按下,并在key向上时更新它。

在这里,我更新了您的代码,因为它可能更容易理解。

代码语言:javascript
复制
import pyautogui
import pygame
loop = True

a_key_down = False                                    # Added variable
while loop:

     for event in pygame.event.get():
            if event.type == pygame.quit:
                pygame.quit()
            if event.type == pygame.KEYDOWN:
                if event.key == pygame.K_a:
                    a_key_down = True                 # Replaced keydown code with this
            if event.type == pygame.KEYUP:            # Added keyup
                if event.key == pygame.K_a:
                    a_key_down = False                
    if a_key_down:                                    # Added to check if key is down
         pyautogui.moveRel(-50,0)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45571647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档