我想用Pygame和Python 2.7来控制连接到Raspberry Pi的Roomba。我通过Putty连接到Pi并通过Putty控制台进行控制。 我遇到的问题是我无法得到一个Pygame显示器来显示,Pygame键盘输入只在Pygame屏幕有焦点时才起作用。代码运行时只有打开窗口,Putty的控制台就在那里。有没有办法以这种方式打开Pygame窗口?Pi上运行的Pygame通过腻子,没有屏幕,没有输入
我有不使用Pygame的工作代码,但它使用getch进行输入,因此您只能通过传入字符切换移动,当您停止按住该键时无法使其停止移动。
这是我在那里我只是试图让Pygame的做任何事情基本代码时,我按一个键:
import pygame, sys
from pygame.locals import *
pygame.init()
screen = pygame.display.set_mode((600, 400))
pygame.display.flip()
while 1:
key=pygame.key.get_pressed()
if key[pygame.K_w]:print'w'
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
elif event.type == KEYDOWN and event.key == K_ESCAPE:
sys.exit()
elif event.type == KEYDOWN and event.key == K_s:
print's'
我已经试过这和(我只是试图再次,现在的好办法)。即使这样,当我按下按键时,发生的一切都是他们输入到Putty的控制台中。我无法让按键事件继续发射。 – Bonzai
Ooooooh,我现在明白了 - 这是因为它是PuTTY(SSH)。我敢打赌,如果你将键盘连接到RPi的USB端口,它就可以工作。我会看看是否有什么可以做的远程键盘输入。 – glennji
否则,我认为你需要通过另一个进程传递密钥ala http://stackoverflow.com/questions/38907681/pygame-through-ssh-does-not-register-keystrokes-raspberry-pi-3#38908145 – glennji