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

Tkinter Python Discussion :

Affichage du score !


Sujet :

Tkinter Python

  1. #1
    Membre habitué
    Avatar de moithibault
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2009
    Messages : 124
    Points : 142
    Points
    142
    Par défaut Affichage du score !
    Bonjour , j'ai un soucis :

    Je suis entrain de développer un minijeu en python plus ou moins ressembant à un jeu de dame , j'aimerais afficher le score de chaque joueurs dynamiquement (quant un coup est joué ont affiche le score ) .

    J'ai deux fichiers :

    Un pour le code (gameplay , nom:gameplay) et un autre pour l'interface (tkinter, nom:interface) , j'appel mon fichier gameplay dans le fichier interface.

    J'arrive à afficher le score dynamiquement avec la fonction print dans le fichier gameplay :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    print "Score Rouge : ",score_rouge
    print "Score vert : ",score_vert
    Maintenant il faut que je l'affiche dans l'interface et c'est là que ça coince , le score est affiché (fonction print) grâce à une méthode dans le fichier gameplay et je doit l'afficher dans une classe dans le fichier interface .

    J'ai fait une méthode dans le fichier interface (class programme)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     def score_affi(texto,fenetre=group):
            Label(fenetre, text=texto,
    fg='#FFFFFF',font="Georgia",bg='#99CCFF',width="60").pack()

    et je compté faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xx.score_affi("LES SCORES",group)
    dans mon fichier gameplay.


    Mais aprés mainte tentative je susi bloqué!
    Merci de votre aide

  2. #2
    Expert confirmé Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Points : 4 005
    Points
    4 005
    Par défaut
    Bonjour biot22,

    Et bien tout dépend de comment tu 'j'appel mon fichier gameplay dans le fichier interface' et difficile sans plus de code.

    Sinon :
    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
     
    #interface.py
     
    import Tkinter
    from gameplay import *
     
    fenetre = Tkinter.Tk()
     
    fenetre.scrr = Tkinter.StringVar()
    fenetre.scrv = Tkinter.StringVar()
    fenetre.scrr.set('0')
    fenetre.scrv.set('0')
     
    lab1=Tkinter.Label(fenetre, textvariable=fenetre.scrr, fg='#FFFFFF',font="Georgia",bg='#99CCFF',width="60")
    lab1.pack()
    lab2=Tkinter.Label(fenetre, textvariable=fenetre.scrv, fg='#FFFFFF',font="Georgia",bg='#99CCFF',width="60")
    lab2.pack()
     
    Tkinter.Button(fenetre, text='Stop', command=fenetre.destroy).pack(side=Tkinter.RIGHT)
    Tkinter.Button(fenetre, text='Score', command=lambda: calculscore(fenetre)).pack(side=Tkinter.RIGHT)
     
    fenetre.mainloop()
    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
    # gameplay.py, enfin pas le tiens. C'est juste pour l'import.
    import random
     
    def calculscore(root):
     
        def majscore(score_rouge, score_vert): # Mise a jour
            print "Score Rouge : ", score_rouge
            print "Score vert : ", score_vert
     
            root.scrr.set(str(score_rouge))
            root.scrv.set(str(score_vert))
     
        def calcul():
            # Generation aleatoire pour simuler ton calcul
            score_rouge = str(random.randrange(0, 100))
            score_vert = str(random.randrange(0, 100))
     
            # Mise a jour graphique et texte
            majscore(score_rouge, score_vert)
     
            # Simule une action
            root.after(300, calcul)
     
        calcul()
    Sinon donne un exemple plus concret (même si ce n'est pas ton code).

    @+
    Merci d'utiliser le forum pour les questions techniques.

Discussions similaires

  1. optimisation affichage de score
    Par TomHardcore_ dans le forum Programmation multimédia/Jeux
    Réponses: 1
    Dernier message: 25/04/2015, 11h29
  2. [SDL_TTF] Affichage de scores
    Par redhotjoli dans le forum SDL
    Réponses: 4
    Dernier message: 12/12/2014, 17h19
  3. [Débutant] jeu (problème d'affichage de score)
    Par danièle100 dans le forum C++Builder
    Réponses: 1
    Dernier message: 08/06/2010, 21h08
  4. affichage d'un score dans gui
    Par gc001 dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 20/05/2010, 18h38
  5. texte variable (affichage de score) sous sdl_ttf
    Par kamouminator dans le forum SDL
    Réponses: 4
    Dernier message: 30/09/2006, 10h48

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