Je suis en train de programmer le jeu du + ou - avec le module tkinter.Je voulais commencer par une fenetre d'accueil avec un texte de bienvenue ainsi que trois boutons:facile normal et difficile.
Le probleme c'est que les boutons sont disposés n'importe comment lorsque j'utilise grid.
Ainsi quand je fait ça:
import random
from tkinter import *
class PremiereFenetre(Tk,Button,Label):
"""fenetre d'accueil,comprend:
--un texte souhaitant la bienvenue a l'utilisateur
--trois bouton pour selectionner la difficultée
--un texte variant suivant la position du curseur sur un bouton"""
def __init__(self):
#creation de la fenetre principale
self=Tk()
#la fenetre ne peut etre modifiée en taille par l'utilisateur
self.resizable(width=False,height=False)
#creation du texte souhaitant la bienvenue et placement sur la fenetre
self.texte=Label(self,text="bienvenue,choisissez une difficulté :")
self.texte.grid(row=0)
#changement du titre de la fenetre
self.titre=self.title("+ ou -")
#creation des trois boutons pouvant regler la difficulté
self.bouton_1=Button(self,text="Facile")
self.bouton_2=Button(self,text="Moyen")
self.bouton_3=Button(self,text="Difficile")
#placement des boutons
self.bouton_1.grid(row=2,column=0)
self.bouton_2.grid(row=2,column=1)
self.bouton_3.grid(row=2,column=2)
joueur=PremiereFenetre()
j'obtiens ca:
que faire pour que les boutons soit disposés de maniere reguliere sur la ligne?
Voici un exemple fonctionnel, votre code ne fonctionne pas chez moi et c'est normal. Il faudra revoir la notion d'héritage, c'est mal employé.
Pour votre erreur, rajouter l'option columnspan au label texte
from tkinter import *
root = Tk()
texte=Label(root, text="bienvenue,choisissez une difficulté :")
texte.grid(row=0, column=0, columnspan=3) # À rajouter dans votre code l'option columnspan
for i in range(3):
b1 = Button(root, text="b1").grid(row=1, column=i)
root.mainloop()
ok merci beaucoup fred, quand à l'heritage je vois ce que tu veut dire
- Edité par Smich74 15 mai 2013 à 15:09:56
Si c'était facile, tout le monde le ferait.
Probleme Tkinter .grid()
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.