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 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
|
from tkinter import *
from modele import *
class Interface(Tk):
"""Interface principale de l'application stock"""
def __init__(self):
Tk.__init__(self)
self.geometry("725x500")
self.title("Stock 2.0")
self.resizable(True,True)
#Menu
menu = Menu(self)
sous_fichier = Menu(self, tearoff=0) # tearoff permet de ne pas détacher le menu
menu.add_cascade(label="Fichier ", menu=sous_fichier)
sous_article = Menu(self, tearoff=0)
menu.add_cascade(label="Article ", menu=sous_article)
#Sous menu de fichier
sous_fichier.add_command(label="Quitter", command=self.quit)
#Sous menu Article
sous_article.add_command(label="Créer C.A.", command=Page_creer_article(self))
self.config(menu=menu)
class Page_creer_article(Frame):
"""page pour créer un article, s'active lors de l'appuie dans le menu Article --> créer C.A."""
def __init__(self, parent):
Frame.__init__(self, width=725, height=500, borderwidth=2, relief=GROOVE)
self.parent = parent
self.grid_propagate(0)
self.init()
def init(self):
self.grid()
#Label d'en tête
txt_intro = Label(self, text="Merci de saisir le nouveau code article :")
txt_intro.grid(column=0, row=0, padx=5, pady=20, columnspan=3, sticky='w')
#Label pour les entrées
txt_ca = Label(self, text="Code article :")
txt_ca.grid(column=0,row=1, padx=5, pady=5)
txt_ref = Label(self, text="Référence :")
txt_ref.grid(column=1, row=1)
txt_mar = Label(self, text="Marque :")
txt_mar.grid(column=2, row=1)
#entrée des champs du code article
global var_ca
var_ca = StringVar()
self.entry_ca = Entry(self, textvariable=var_ca)
self.entry_ca.grid(column=0,row=2, padx=5)
global var_ref
var_ref = StringVar()
self.entry_ref = Entry(self, textvariable=var_ref)
self.entry_ref.grid(column=1, row=2, padx=5)
global var_mar
var_mar = StringVar()
self.entry_mar = Entry(self, textvariable=var_mar)
self.entry_mar.grid(column=2, row=2, padx=5)
#bouton pour valider l'envoi
valider = Button(self, text="Valider le code article", command=self.creation_ca)
valider.grid(column=0, row=6, columnspan=5, pady=50)
def creation_ca(self): #actionner par le bouton valider
"""Permet d'envoyer le code article à la BDD lors de l'appuie sur "valider" """
print("envoi du fichier article")
art = Article(var_ca.get(), var_ref.get(), var_mar.get())
print(art)
try:
art.ajt_base()
except:
print("Erreur !!!")
if __name__ == "__main__":
app = Interface()
app.mainloop() |
Partager