finalisation add function/color boutoon
This commit is contained in:
parent
1591720d7d
commit
6ee8861871
45
cave.py
45
cave.py
@ -1,4 +1,5 @@
|
|||||||
|
|
||||||
|
|
||||||
import pickle
|
import pickle
|
||||||
from tkinter import *
|
from tkinter import *
|
||||||
|
|
||||||
@ -6,7 +7,7 @@ class Etageres(object):
|
|||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.etageres = []
|
self.etageres = []
|
||||||
self.nbetagere = 0
|
self.nbetagere = 0
|
||||||
self.couleur = ["rouge","blanc","rose"]
|
self.couleur = {"rouge":"red","blanc":"white","rose":"pink"}
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def load_etageres(cls,file):
|
def load_etageres(cls,file):
|
||||||
@ -21,6 +22,9 @@ class Etageres(object):
|
|||||||
self.fenetre=Tk()
|
self.fenetre=Tk()
|
||||||
for etagere in self.etageres:
|
for etagere in self.etageres:
|
||||||
etagere.generate_frame(self.fenetre)
|
etagere.generate_frame(self.fenetre)
|
||||||
|
|
||||||
|
framecontrol=Frame(self.fenetre)
|
||||||
|
framecontrol.grid(column=2)
|
||||||
|
|
||||||
def mainloop(self):
|
def mainloop(self):
|
||||||
self.fenetre.mainloop()
|
self.fenetre.mainloop()
|
||||||
@ -114,14 +118,29 @@ class Etagere(object):
|
|||||||
|
|
||||||
def click_add_bouteille(self,cassiervide):
|
def click_add_bouteille(self,cassiervide):
|
||||||
|
|
||||||
couleur="test"
|
child_window=Toplevel(self.etageres.fenetre)
|
||||||
millesime="0000"
|
Label(child_window,text="select color").pack()
|
||||||
appelation="toto"
|
couleur=StringVar()
|
||||||
newbouteille=Bouteille(cassiervide.pos_largeur, cassiervide.pos_hauteur, couleur, appelation, millesime, self)
|
couleur.set("rouge")
|
||||||
self.bouteilles.append(newbouteille)
|
OptionMenu(child_window,couleur,*self.etageres.couleur.keys()).pack()
|
||||||
del cassiervide
|
|
||||||
newbouteille.generate_boutton(self.frame)
|
Label(child_window,text="enter millesime").pack()
|
||||||
self.frame["text"]=self
|
millesime=StringVar()
|
||||||
|
Entry(child_window,textvariable=millesime).pack()
|
||||||
|
|
||||||
|
Label(child_window,text="enter appelation").pack()
|
||||||
|
appelation=StringVar()
|
||||||
|
Entry(child_window,textvariable=appelation).pack()
|
||||||
|
|
||||||
|
Button(child_window,text="OK",command=lambda:add(cassiervide,couleur.get(),millesime.get(),appelation.get())).pack()
|
||||||
|
|
||||||
|
def add(cassiervide,couleur,millesime,appelation):
|
||||||
|
child_window.destroy()
|
||||||
|
newbouteille=Bouteille(cassiervide.pos_largeur, cassiervide.pos_hauteur, couleur, appelation, millesime, self)
|
||||||
|
self.bouteilles.append(newbouteille)
|
||||||
|
del cassiervide
|
||||||
|
newbouteille.generate_boutton(self.frame)
|
||||||
|
self.frame["text"]=self
|
||||||
|
|
||||||
class Cassier_vide(object):
|
class Cassier_vide(object):
|
||||||
|
|
||||||
@ -138,9 +157,6 @@ class Bouteille(object):
|
|||||||
def __init__(self, pos_largeur, pos_hauteur, couleur, appelation, millesime, etagere):
|
def __init__(self, pos_largeur, pos_hauteur, couleur, appelation, millesime, etagere):
|
||||||
self.pos_largeur = pos_largeur
|
self.pos_largeur = pos_largeur
|
||||||
self.pos_hauteur = pos_hauteur
|
self.pos_hauteur = pos_hauteur
|
||||||
if (couleur not in etagere.etageres.couleur):
|
|
||||||
etagere.etageres.couleur.append(couleur)
|
|
||||||
|
|
||||||
|
|
||||||
self.couleur = couleur
|
self.couleur = couleur
|
||||||
|
|
||||||
@ -151,17 +167,18 @@ class Bouteille(object):
|
|||||||
def generate_boutton(self,frame):
|
def generate_boutton(self,frame):
|
||||||
|
|
||||||
self.boutton=Button(frame,text=self,command=lambda:self.etagere.click_remove_bouteille(self))
|
self.boutton=Button(frame,text=self,command=lambda:self.etagere.click_remove_bouteille(self))
|
||||||
|
self.boutton["bg"]=self.etagere.etageres.couleur[self.couleur]
|
||||||
self.boutton.grid(row=self.pos_hauteur,column=self.pos_largeur)
|
self.boutton.grid(row=self.pos_hauteur,column=self.pos_largeur)
|
||||||
|
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return "appelation {}, millesime {} \n".format(self.appelation, self.millesime)
|
return "couleur {} ,appelation {}, millesime {} \n".format( self.couleur,self.appelation, self.millesime)
|
||||||
|
|
||||||
new = Etageres()
|
new = Etageres()
|
||||||
new.add_etagere(10, 3)
|
new.add_etagere(10, 3)
|
||||||
new.add_etagere(4,4)
|
new.add_etagere(4,4)
|
||||||
print(new.etageres[0].add_bouteille(1, 1, "rouge", "saint emilion", 2005))
|
print(new.etageres[0].add_bouteille(1, 1, "rouge", "saint emilion", 2005))
|
||||||
print(new.etageres[0].add_bouteille(9, 1, "pisse", "gewurtz", 2010))
|
print(new.etageres[0].add_bouteille(9, 1, "rose", "gewurtz", 2010))
|
||||||
print(new.etageres[0].add_bouteille(5, 2, "rouge", "saint emilion", 2006))
|
print(new.etageres[0].add_bouteille(5, 2, "rouge", "saint emilion", 2006))
|
||||||
|
|
||||||
print(new.etageres[0].bouteilles)
|
print(new.etageres[0].bouteilles)
|
||||||
|
Loading…
Reference in New Issue
Block a user