2016-05-27 2 views
0

Pour une partie que je code, il y a une partie dans le menu principal où vous devez appuyer sur 'P' pour jouer. Je commencé à utiliser ce code:Problèmes avec la saisie de la lettre de réception dans Pygame

import pygame, sys, time 
DISPLAY = pygame.display.set_mode((1023, 647)) 
WHITE = (255, 255, 255) 
mainscreendisplayimg = pygame.image.load('mainScreen.png') 
def mainscreen(x, y): 
    DISPLAY.blit(mainscreendisplayimg, (x, y)) 
mainscreen(1, 1) 
pressed = pygame.key.get_pressed() 
while active: 
    ... 
    if pressed[pygame.K_p]: 
      print 'Done' 
    pygame.display.update() 
    clock.tick(15) 

Ce que je pense se passerait-il est il affiche l'image principale, qui vous donne des instructions pour appuyer sur p, puis il imprimerait « Done » (il sera remplacé plus code à une date ultérieure). Cependant, chaque fois que j'exécute le programme, l'image se chargera mais rien ne se passera quand j'appuierai sur p.

J'ai également essayé d'utiliser la méthode du clavier, mais il n'y avait aucun changement.

Des idées?

+0

-vous actif = quelque part défini vrai? –

Répondre

0

Ok donc je me suis dit tout seul merci pour l'aide quand même! Il s'est avéré que j'utilisais incorrectement le clavier et qu'il y avait des erreurs de syntaxe qui causaient un dysfonctionnement.

Pour référence et d'aider les autres, voici le code mis à jour:

active = true 
while active: 
    for event in pygame.event.get(): 
      if event.type == pygame.KEYDOWN: 
       if event.key == pygame.K_p: 
        print 'Done' 

Merci pour ceux qui ont essayé d'aider, désolé, je fait perdre votre temps