Page 1 sur 1

Ajout d"une interface graphique

Posté : jeu. 25 avr. 2013 21:06
par Mojada
Bonsoir à toutes et à tous.

Je suis là pour chercher un peu d'aide, j'me suis mis dans une situation assez délicate.

Voila, je devais develloper un projet en groupe sur du python et ma partie c'est l'interface graphique, ce qui est en soi un problème car j'y connaissais rien, néanmoins j'ai décidé d'apprendre mais il y'a un autre soucis (décidément ), l'autre parti du groupe à terminer le programme et je ne sais comment je dois m'y prendre pour le passer sur une interfaces graphique...

Le projet en question est le jeu reversi, sur lequel je serais noté dans moins d'une semaine en tant qu'épreuve du bac, et je sais pas du tout m'y prendre pour avancer, si quelqu'un pouvez m'aidez se serait vraiment sympa.

Je reste à votre disposition pour toutes informations complémentaires, Merci !

Re: Ajout d"une interface graphique

Posté : jeu. 25 avr. 2013 21:11
par Codex
Peux-tu nous détaillé le projet en question ? Car c'est un peu vague là

Re: Ajout d"une interface graphique

Posté : jeu. 25 avr. 2013 21:18
par Mojada
Oui, c'est le jeu othello (reversi), un jeu assez populaire.

Soit dis en passant, le code :


from random import *
import sys
choixdujoueur = 0
casepions = 0
caseselectionne = 0
tourdujoueur = 0 #variable definissant la couleur du pions
partifini = 0
coordonneeH1=0
coordonneeV1=0
n = 0 # variable qui vas permettre de boucler la fonction de detection de pions L 82 a L 165
k = 0 # variable qui vas permettre de changer la couleur des jetons L 85 a L 168
l = 0 # variable verifiant qu'il y as eu encadrement L82 a L 168
def tableaux():
    global Plateau_de_jeu
    global table_de_jeu
    global choixdujoueur
    partifini = 0
    Plateau_de_jeu=[[0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,],
                  [0,0,0,2,1,0,0,0,],
                  [0,0,0,1,2,0,0,0,],
                  [0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,]]
    table_de_jeu=[[0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,2,1,0,0,0,0,],
                  [0,0,0,0,1,2,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,]]
    print("  1  2  3  4  5  6  7  8")
    print("1",Plateau_de_jeu[0])
    print("2",Plateau_de_jeu[1])
    print("3",Plateau_de_jeu[2])
    print("4",Plateau_de_jeu[3])
    print("5",Plateau_de_jeu[4])
    print("6",Plateau_de_jeu[5])
    print("7",Plateau_de_jeu[6])
    print("8",Plateau_de_jeu[7])
    print (' ')

    choixdujoueur = randint(1,2)
    if choixdujoueur == 1:
        print("J1 start, vous avez les pions blanc")
    else :
        print("J2 start, vous avez les pions noirs")
def coordonneeHorizontal():
    global coordonneeH
    global coordonneeH1
    coordonneeH = int(input("Entrez l'ordonnee : "))
    if coordonneeH in [1,2,3,4,5,6,7,8]:
        print ("c'est bon, vous avez selectionnez :",coordonneeH)
        coordonneeH1 = coordonneeH-1
    elif cordonneeH == 0:
        print("tour impossible")

    else:
        print ("c'est pas bon")
        coordonneeHorizontal()
def coordonneeVertical():
    global coordonneeV
    global coordonneeV1
    coordonneeV = int(input("Entrez l'abscisse : "))
    if coordonneeV in [1,2,3,4,5,6,7,8]:
        print ("c'est bon, vous avez selectionnez :",coordonneeV)
        coordonneeV1 = coordonneeV-1
    else:
        print ("c'est pas bon")
        coordonneeVertical()
def jouabilite():
    global Plateau_de_jeu
    global coordonneeH
    global coordonneeV
    global l
    global table_de_jeu
    print(coordonneeH,coordonneeV)
    if table_de_jeu[coordonneeH][coordonneeV] == 1:
        print("choix invalide,presence de 1. prenez une case inoccuper")
        tourdujoueur()
    elif table_de_jeu[coordonneeH][coordonneeV] == 2:
        print("choix invalide,presence de 2. prenez une case inoccuper")
        tourdujoueur()
    else:
        print("verification de la jouabilite...")
        if table_de_jeu[coordonneeH-1][coordonneeV]==0 and table_de_jeu[coordonneeH+1][coordonneeV]== 0 and table_de_jeu[coordonneeH][coordonneeV-1]== 0 and table_de_jeu[coordonneeH][coordonneeV+1]== 0 and table_de_jeu[coordonneeH-1][coordonneeV-1]== 0 and table_de_jeu[coordonneeH+1][coordonneeV-1]== 0 and table_de_jeu[coordonneeH+1][coordonneeV+1]== 0 and table_de_jeu[coordonneeH-1][coordonneeV+1] == 0:
            print ("erreur de placement : poser a coter d' un jetons")
            tourdujoueur()
        else:
            if table_de_jeu[coordonneeH-1][coordonneeV]!=(choixdujoueur) and table_de_jeu[coordonneeH-1][coordonneeV]!=0 or table_de_jeu[coordonneeH+1][coordonneeV]!=(choixdujoueur) and table_de_jeu[coordonneeH+1][coordonneeV]!=0 or table_de_jeu[coordonneeH][coordonneeV-1]!=(choixdujoueur) and table_de_jeu[coordonneeH][coordonneeV-1]!=0 or table_de_jeu[coordonneeH][coordonneeV+1]!=(choixdujoueur) and table_de_jeu[coordonneeH][coordonneeV+1]!=0 or table_de_jeu[coordonneeH-1][coordonneeV+1]!=(choixdujoueur) and table_de_jeu[coordonneeH-1][coordonneeV+1]!=0 or table_de_jeu[coordonneeH-1][coordonneeV-1]!=(choixdujoueur) and table_de_jeu[coordonneeH-1][coordonneeV-1]!=0 or table_de_jeu[coordonneeH+1][coordonneeV-1]!=(choixdujoueur) and table_de_jeu[coordonneeH+1][coordonneeV-1]!=0 or table_de_jeu[coordonneeH+1][coordonneeV+1]!=(choixdujoueur) and table_de_jeu[coordonneeH+1][coordonneeV+1]!=0:
                print("verification de l' encadrement : ")
                n = 1
                k = 1
                l = 0
                while table_de_jeu[coordonneeH-n][coordonneeV] != choixdujoueur and table_de_jeu[coordonneeH-n][coordonneeV] != 0:
                    n = n+1
                    if table_de_jeu[coordonneeH-n][coordonneeV]==choixdujoueur:
                        print("c'est bon 1")
                        for k in range (n):
                            table_de_jeu[coordonneeH-k][coordonneeV]=choixdujoueur
                            Plateau_de_jeu[coordonneeH1-k][coordonneeV1]=choixdujoueur
                            k = k+1
                            l=1


                n=1
                while table_de_jeu[coordonneeH+n][coordonneeV]!=(choixdujoueur) and table_de_jeu[coordonneeH+n][coordonneeV]!= 0 :
                    n=n+1
                    if table_de_jeu[coordonneeH+n][coordonneeV] == choixdujoueur:
                        print("c'est bon 2")
                        for k in range (n):
                            table_de_jeu[coordonneeH+k][coordonneeV] = choixdujoueur
                            Plateau_de_jeu[coordonneeH1+k][coordonneeV1] = choixdujoueur
                            k = k+1
                            l=1
                n=1
                while table_de_jeu[coordonneeH][coordonneeV-n]!=(choixdujoueur) and table_de_jeu[coordonneeH][coordonneeV-n]!=0:
                    n=n+1
                    if table_de_jeu[coordonneeH][coordonneeV-n] == choixdujoueur:
                        print("c'est bon 3")
                        for k in range (n):
                            table_de_jeu[coordonneeH][coordonneeV-k] = choixdujoueur
                            Plateau_de_jeu[coordonneeH1][coordonneeV1-k] = choixdujoueur
                            k=k+1
                            l=1
                n=1
                while table_de_jeu[coordonneeH][coordonneeV+n]!=(choixdujoueur) and table_de_jeu[coordonneeH][coordonneeV+n]!=0:
                    n=n+1
                    if table_de_jeu[coordonneeH][coordonneeV+n]==(choixdujoueur):
                        print("c'est bon 4")
                        for k in range (n):
                            table_de_jeu[coordonneeH][coordonneeV+k]=(choixdujoueur)
                            Plateau_de_jeu[coordonneeH1][coordonneeV1+k]=(choixdujoueur)
                            k=k+1
                            l=1
                n=1
                while table_de_jeu[coordonneeH+n][coordonneeV-n]!=(choixdujoueur) and table_de_jeu[coordonneeH+n][coordonneeV-n]!=0:
      table_de_jeu[coordonneeH+k][coordonneeV] = choixdujoueur
                            Plateau_de_jeu[coordonneeH1+k][coordonneeV1] = choixdujoueur            n=n+1
                    if table_de_jeu[coordonneeH+n][coordonneeV-n]==(choixdujoueur):
                        print("c'est bon 5")
                        for k in range (n):
                            table_de_jeu[coordonneeH+k][coordonneeV-k]=(choixdujoueur)
                            Plateau_de_jeu[coordonneeH1+k][coordonneeV1-k]=(choixdujoueur)
                            k=k+1
                            l=1
                n=1
                while table_de_jeu[coordonneeH+n][coordonneeV+n]!=(choixdujoueur) and table_de_jeu[coordonneeH+n][coordonneeV+n]!=0:
                    n=n+1
                    if table_de_jeu[coordonneeH+n][coordonneeV+n]==(choixdujoueur):
                        print("c'est bon 6")
                        for k in range (n):
                            table_de_jeu[coordonneeH+k][coordonneeV+k]=(choixdujoueur)
                            Plateau_de_jeu[coordonneeH1+k][coordonneeV1+k]=(choixdujoueur)
                            k=k+1
                            l=1
                n=1
                while table_de_jeu[coordonneeH-n][coordonneeV+n]!=(choixdujoueur) and table_de_jeu[coordonneeH-n][coordonneeV+n]!=0:
                    n=n+1
                    if table_de_jeu[coordonneeH-n][coordonneeV+n]==(choixdujoueur):
                        print("c'est bon 7!")
                        for k in range (n):
                            table_de_jeu[coordonneeH-k][coordonneeV+k]=(choixdujoueur)
                            Plateau_de_jeu[coordonneeH1-k][coordonneeV1+k]=(choixdujoueur)
                            k=k+1
                            l=1

                n=1
                while table_de_jeu[coordonneeH-n][coordonneeV-n]!=(choixdujoueur) and table_de_jeu[coordonneeH-n][coordonneeV-n]!=0:
                    n=n+1
                    if table_de_jeu[coordonneeH-n][coordonneeV-n]==(choixdujoueur):
                        print("c'est bon 8")
                        for k in range (n):
                            table_de_jeu[coordonneeH-k][coordonneeV-k]=(choixdujoueur)
                            Plateau_de_jeu[coordonneeH1-k][coordonneeV1-k]=(choixdujoueur)
                            k=k+1
                            l=1
                if l != 1:
                    print("veuillez creer un encadrement avec vos pions autour de ceux de l' adversaire")
                    print("  1  2  3  4  5  6  7  8 ")
                    print("1",Plateau_de_jeu[0])
                    print("2",Plateau_de_jeu[1])
                    print("3",Plateau_de_jeu[2])
                    print("4",Plateau_de_jeu[3])
                    print("5",Plateau_de_jeu[4])
                    print("6",Plateau_de_jeu[5])
                    print("7",Plateau_de_jeu[6])
                    print("8",Plateau_de_jeu[7])
                    tourdujoueur()
                else:
                    print("c'est valide!")

            else:
                print("erreur d' encadrement")
                tourdujoueur()
def volonteJ():
    global VolonteJ, choixdujoueur
    VolonteJ = input("entre une commande : ")
    print("vous avez choisis de :",VolonteJ)
    if VolonteJ == "passez":
        if choixdujoueur==1:
            choixdujoueur=2
            print("c'est desormais au joueur", choixdujoueur,"de jouer")
            particontrejoueur()
        else:
            choixdujoueur=1
            print("c'est desormais au joueur", choixdujoueur,"de jouer")
            particontrejoueur()
    elif VolonteJ == "jouer":
        print("c'est parti")
    elif VolonteJ == "finir":
        VolonteJ = input("etes vous sur ? oui ou non ")
      table_de_jeu[coordonneeH+k][coordonneeV] = choixdujoueur
                            Plateau_de_jeu[coordonneeH1+k][coordonneeV1] = choixdujoueur if VolonteJ == "oui":
            comptage()
        else:
            volonteJ()
    else:
        print ("entre invalide, vous pouvvez entrer ces commandes :")
        print("passez; pour passez le tour")
        print("jouer, pour jouer votre tour")
        print("finir, pour finir la parti")
        volonteJ()
def comptage():
    print("comptage des jetons")
    partifini = 1
    blanc=0
    noir=0
    nul=0
    n=0
    while n7 :
        ligne=0
        while ligne 7:
            if Plateau_de_jeu[ligne][n]==1:
                blanc = blanc +1
            elif Plateau_de_jeu[ligne][n]==2:
                noir = noir+1
            else:
                nul = nul +1
            ligne = ligne+1
        n = n+1
    print("il y as",blanc,"pions blancs")
    print("il y as",noir,"pions noirs")
    print("il y as",nul,"case vide")
    if blanc noir:
        print("J1 gagne")
    elif blanc noir:
        print("J2 gagne")
    else:
        print("egaliter")
    rep = input("voulez vous rejouer : oui ou non ? ")
    if rep == "oui":
        jeux()
    else:
        print("Au revoir")
        sys.exit()
def MAJtableau():
    global Plateau_de_jeu
    global coordonneeH
    global coordonneeV
    table_de_jeu[coordonneeH][coordonneeV]=choixdujoueur
    Plateau_de_jeu[coordonneeH1][coordonneeV1]=choixdujoueur
    print("    1  2  3  4  5  6  7  8")
    print("1",Plateau_de_jeu[0])
    print("2",Plateau_de_jeu[1])
    print("3",Plateau_de_jeu[2])
    print("4",Plateau_de_jeu[3])
    print("5",Plateau_de_jeu[4])
    print("6",Plateau_de_jeu[5])
    print("7",Plateau_de_jeu[6])
    print("8",Plateau_de_jeu[7])
    print (' ')
def tourdujoueur():
    global Plateau_de_jeu
    global coordonneeH
    global coordonneeV
    volonteJ()
    coordonneeVertical()
    coordonneeHorizontal()
    jouabilite()
def particontrejoueur():
    while partifini == 0:
        global choixdujoueur
        if choixdujoueur == 1:
            tourdujoueur()
            MAJtableau()
            choixdujoueur = 2
            print("tour fini, passer maintenant a joueur 2")
        else:
            tourdujoueur()
            MAJtableau()
            choixdujoueur = 1
            print("tour fini, passer maintenant a joueur 1")
        print("joueur",choixdujoueur)
def particontreAI():
    tableaux()
    particontrejoueur()
def jeux():
    tableaux()
    particontrejoueur()
jeux()

Re: Ajout d"une interface graphique

Posté : jeu. 25 avr. 2013 21:32
par Codex
Pour créer des interfaces graphiques en Python tu dois utiliser le module Tkinter qui est présent par défaut.

Tu devrais trouver beaucoup de tutorial complet sur celui-ci.

Re: Ajout d"une interface graphique

Posté : jeu. 25 avr. 2013 21:41
par Mojada
Très bien mais comment je peux l'intégrer à mon code ?

Re: Ajout d"une interface graphique

Posté : jeu. 25 avr. 2013 21:53
par Codex
Malheureusement je ne peux pas t'aider d'avantage car mes connaissances en codage sont vague.

Cependant, je peux te conseiller un site qui t'expliqueras tout ce qu'il faut savoir.
Sachant que tu n'es pas inscrit sur le forum je ne peux pas te communiquer l'adresse du site en message privé.
Je t'invite donc à m'envoyer un mail à cet adresse : "EMAIL RETIRER" soit à t'inscrire sur le forum. (C'est gratuit et Rapide )

Re: Ajout d"une interface graphique

Posté : jeu. 25 avr. 2013 23:00
par 2011N2
Salut,

Pourquoi ne pas mettre l'adresse du site dans le sujet même ?

De plus, Codex, je te conseil de ne pas mettre ton mail privé en public (pas de jeu de mot ), si tu veux éviter le spam...

@+

Gabriel.

Re: Ajout d"une interface graphique

Posté : jeu. 25 avr. 2013 23:22
par Codex
Salut,
Pourquoi ne pas mettre l'adresse du site dans le sujet même ?

Parcequ'il me semblait que c'étais interdit
Bon et bien du coup voici le lien:

http://www.siteduzero.com/informatique/ ... ec-tkinter
(Oui le célébre SdZ ^^)

Amuse toi bien !

Re: Ajout d"une interface graphique

Posté : ven. 26 avr. 2013 00:15
par 2011N2
Re,

Non non, c'est seulement si c'est uniquement pour faire de la publicité, là ce n'est pas du tout le cas.

Merci pour le lien donc.

Bonne soirée,

Gabriel.

Re: Ajout d"une interface graphique

Posté : mar. 21 mai 2013 19:56
par 2011N2
ImageOù en-est votre problème ?

Deux solutions,
  • Votre problème est résolu, dans ce cas pensez à nous en faire part.
  • Votre problème est toujours d'actualité, merci de nous renseigner sur ce qui ne va pas, et donner des nouvelles régulièrement.


    À bientôt sur FEI !

Re: Ajout d"une interface graphique

Posté : sam. 25 mai 2013 14:10
par 2011N2
Image Bonjour,

Nous n'avons plus de nouvelle de l'auteur de ce sujet depuis plus de 10 jours. Nous considérons donc ce problème comme résolu ou abandonné par son auteur. La prochaine fois, merci de nous tenir au courant de l'évolution de votre problème, ou à faire un UP régulièrement !

Ce sujet est verrouillé, si vous souhaitez le reprendre, merci de contacter par message privé un membre de l'équipe de modération du forum.

À bientôt sur FEI !