为什么我没有释放密钥就得到 Pygame KEYUP 事件?
Why do I get Pygame KEYUP event without releasing the key?
首先,我是一个完全的初学者,所以我没有任何经验,但是这两天我已经搜索了所有可能的地方来解决,但没有找到。
我在 Raspberry PI 3 和 Raspbian 上使用它。
我正在尝试在 Python 3.6 中构建一个简单的代码,它将执行以下操作:
当按下键盘键时:
如果按键被按下,1.it 应该打印 'press',而不重复。
(如果按住该键,它应该只打印一次 'press' 并停止)。
2.it 应该打印 'release' 如果键没有重复就被释放了。
基本上我想打印一次键的最后状态,
我遇到的问题是:
在按住键的同时,我得到了连续的 press/release press/release press/release 事件,即使没有物理释放键,而不是只得到 1 'press'.
下面是我正在尝试使用的代码。
#!/usr/bin/env python
import pygame
from pygame.locals import *
from time import sleep
import time
pygame.init()
screen = pygame.display.set_mode((800,800))
keys= [False]
last = None
pygame.key.set_repeat()
while True:
if keys[0]==True and last != 'press':
print ('press')
last = 'press'
if keys[0]==False and last != 'release':
print('release')
last = 'release'
for event in pygame.event.get():
if event.type==pygame.QUIT:
pygame.quit()
exit(0)
if event.type == pygame.KEYDOWN:
if event.key==K_d:
keys[0]=True
if event.type == pygame.KEYUP:
if event.key==K_d:
keys[0]=False
问题已解决,因为我使用的是 VNC 而不是使用直接连接到 Raspberry Pi 的键盘。
首先,我是一个完全的初学者,所以我没有任何经验,但是这两天我已经搜索了所有可能的地方来解决,但没有找到。
我在 Raspberry PI 3 和 Raspbian 上使用它。
我正在尝试在 Python 3.6 中构建一个简单的代码,它将执行以下操作: 当按下键盘键时:
如果按键被按下,1.it 应该打印 'press',而不重复。
(如果按住该键,它应该只打印一次 'press' 并停止)。
2.it 应该打印 'release' 如果键没有重复就被释放了。
基本上我想打印一次键的最后状态,
我遇到的问题是:
在按住键的同时,我得到了连续的 press/release press/release press/release 事件,即使没有物理释放键,而不是只得到 1 'press'.
下面是我正在尝试使用的代码。
#!/usr/bin/env python
import pygame
from pygame.locals import *
from time import sleep
import time
pygame.init()
screen = pygame.display.set_mode((800,800))
keys= [False]
last = None
pygame.key.set_repeat()
while True:
if keys[0]==True and last != 'press':
print ('press')
last = 'press'
if keys[0]==False and last != 'release':
print('release')
last = 'release'
for event in pygame.event.get():
if event.type==pygame.QUIT:
pygame.quit()
exit(0)
if event.type == pygame.KEYDOWN:
if event.key==K_d:
keys[0]=True
if event.type == pygame.KEYUP:
if event.key==K_d:
keys[0]=False
问题已解决,因为我使用的是 VNC 而不是使用直接连接到 Raspberry Pi 的键盘。