IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation multimédia/Jeux Python Discussion :

probleme de fenetre avec pygame et pyscripter


Sujet :

Programmation multimédia/Jeux Python

  1. #1
    Membre du Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2013
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2013
    Messages : 38
    Points : 47
    Points
    47
    Par défaut probleme de fenetre avec pygame et pyscripter
    Bonjour,


    Le code que je vous envoie est juste une classe devant servir par la suite à construire un jeu du memory( peu importe si vous ne connaissez pas le jeu).
    Il contient une partie test.
    Mon problème:
    lorsque je lance le test, j'obtiens une un fond noir à la place de mon fond rouge, le fond rouge apparaît parfois et je n'arrive pas à fermer proprement la fenêtre: il me faut fermer le programme par le gestionnaire de tâches windows.
    J'ai essayé avec plus moteurs python mais j'ai fini par prendre le moteur " interne": ça bugge moins masi ça bugge quand même.
    Merci d'avance pour vos réponses.
    Mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    # Créé par rafoim, le 30/12/2013 en Python 3.2
    import pygame
    import os
    from pygame.locals import *
     
    pygame.init()
     
    def load_image(name, colorkey=None):
        fullname = os.path.join('data', name)
        try:
            image = pygame.image.load(fullname)
        except (pygame.error):
            print ("Impossible de charger l'image :", name)
            raise (SystemExit)
        image = image.convert()
        if colorkey is not None:
            if colorkey is -1:
                colorkey = image.get_at((0,0))
            image.set_colorkey(colorkey, RLEACCEL)
        return image
     
    class Carte():
        def __init__(self,chemin_image_cachée,chemin_image_visible,rectangle):
            self.chemin=chemin_image_visible
            self.surface_visible=load_image(chemin_image_visible)
            self.surface_cachée=load_image(chemin_image_cachée)
            self.rectangle=rectangle
            self.visible=True
            self.Retourner()
     
        def Retourner(self):
            screen = pygame.display.get_surface()
            if self.visible==False:
                screen.blit(self.surface_visible,self.rectangle)
                self.visible=True
                pygame.display.update(self.rectangle)
            else:
                screen.blit(self.surface_cachée,self.rectangle)
                self.visible=False
                pygame.display.update(self.rectangle)
     
     
     
    if __name__=="__main__":
        screen = pygame.display.set_mode((1300, 700))
        fond=load_image("fond.png")
        screen.blit(fond,(0,0))
        rectangle=Rect(100,50,300,200)
        carte1=Carte("carte0.png","carte1.png",rectangle)
        continuer=1
        while continuer:
            for event in pygame.event.get():
                if event.type==QUIT:
                    continuer=0
                if event.type==MOUSEBUTTONDOWN:
                    if carte1.rectangle.collidepoint(event.pos):
                        carte1.Retourner()

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 046
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 046
    Points : 1 376
    Points
    1 376
    Par défaut
    Termine le code avec un pygame.quit()
    mets un pygame.display.flip() après avoir blitté le fond

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probleme de disposition avec GridBagLayout dans une fenetre
    Par thierry_b dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 17/07/2009, 11h08
  2. probleme d'ouverture de fenetre avec visual studio
    Par saifoune dans le forum Visual Studio
    Réponses: 0
    Dernier message: 02/04/2009, 15h33
  3. probleme d'evenements.. avec plusieurs fenetres :(
    Par djynwk dans le forum GTK+ avec C & C++
    Réponses: 5
    Dernier message: 18/04/2007, 16h01
  4. Réponses: 12
    Dernier message: 23/10/2002, 11h56
  5. Probleme d'impression avec la méthode TForm->Print()
    Par Kid Icarus dans le forum C++Builder
    Réponses: 13
    Dernier message: 31/07/2002, 14h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo