ouvert_a_tous:prepas:objet:appli_graphique

~~stoggle_buttons~~

Cette page est, actuellement, en travaux. Elle sera améliorée dans les semaines qui viennent.

Le code de la partie graphique

applicationLivres.py
import sys
sys.path.append("F:\\__2012_2013\\_PREPAS\\jeudi\\appliLivre\\")
from tkinter import *
from classes_du_domaine import *
from classes_dao import *
from classes_services import *
from classes_fenetres import *
 
class fenetre_ajouter_editeur(Toplevel):
    def __init__(self,master, prmtrServiceE):
        Toplevel.__init__(self)
        self.title('Ajouter un Editeur')
        self.leService = prmtrServiceE
        self.btn = Button(self, text='Ajouter', command=self.enregistrer_editeur)
        self.lblNom = Label(self,text="Nom Editeur")
 
        self.txtNom = Entry(self)
        self.lblNom.grid(row=0, column=0)
        self.txtNom.grid(row=0, column=1)
        self.lblVide = Label(self,text=" ")
        self.lblVide.grid(row=1, column=0)
        self.btnAjouter=Button(self,text="Ajouter l'Editeur" , command=self.enregistrer_editeur)
        self.btnAjouter.grid(row=4, column=1)
##        self.btn .pack()
    def enregistrer_editeur(self):
         print ('enregistrer')
 
class fenetre_ajouter_livre(Toplevel):
    def __init__(self,master, prmtrServiceL):
        Toplevel.__init__(self)
        self.title('Ajouter un Livre')
        self.leService = prmtrServiceL
        self.btn = Button(self, text='Ajouter', command=self.enregistrer_livre)
        self.btn .pack()
    def enregistrer_livre(self):
         print ('enregistrer')
 
## méthode à supprimer : juste pour info sur "mise en page"
##def topLevel():
##    top=Toplevel()
##    top.title("Listbox test")
##    notiLabel = Label(top, text ="----test----", font=('Times', 20))
##    notiLabel.grid(row=0,column=0, sticky=W)
##
##    noti = Label(top, text ="----test----", font=('Times', 18))
##    noti.grid(row=1,column=1, sticky=W)
##
##    f = Label(top, text ="------test-----") # note the 'top' parameter
##    # 'top' was your Toplevel widget
##    f.grid(row=3,column=0, sticky=W)
##    fa = Label(top)
##    fa.grid(row=3,column=1, sticky=W)
 
def hello():
    print('hello')
 
def clic_creer_editeur():
    f = fenetre_ajouter_editeur(fenetre_principale,lesServices["editeur"])
def clic_creer_livre():
    f = fenetre_ajouter_livre(fenetre_principale,lesServices["livre"])
 
def quit():
    pass
 
def dessiner(la_fntr_prncpl, prmtrServices):
    # create a toplevel menu
    menubar = Menu(la_fntr_prncpl)
    la_fntr_prncpl.title("Fenêtre Principale")
 
    menuLivre = Menu(menubar, tearoff=0)
    menuLivre.add_command(label="Ajouter", command=clic_creer_livre)
    menuLivre.add_command(label="Lister", command=hello)
    menuLivre.add_separator()
    menuLivre.add_command(label="Exit", command=la_fntr_prncpl.quit)
    menubar.add_cascade(label="Livre", menu=menuLivre)
 
    menuEditeur = Menu(menubar, tearoff=0)
    menuEditeur.add_command(label="Créer", command=clic_creer_editeur)
    menuEditeur.add_command(label="Lister", command=hello)
    menuEditeur.add_command(label="Paste", command=hello)
    menubar.add_cascade(label="Editeur", menu=menuEditeur)
 
    helpmenu = Menu(menubar, tearoff=0)
    helpmenu.add_command(label="About", command=hello)
    menubar.add_cascade(label="Help", menu=helpmenu)
 
    # display the menu
    la_fntr_prncpl.config(menu=menubar)
#### lignes à supprimer : juste pour info
##    s = Label(text =">>>test<<<", font=(('Times'),20))
##    s.grid(row=2,column=0)
##
##
##    N = Label(text =">>>test<<<")
##    N.grid(row=3,column=0)
##
##
##    LB = Listbox(width=50, selectmode =SINGLE)
##    LB.grid(row=4, column=0)
 
## Deux lignes à supprimer : juste pour info
##    TI = Button(text="b1", width =50, command=topLevel)
##    TI.grid(row=5, column=0)
lesServices={}
laDao = DaoEditeurEnMemoire()
srvcE = ServiceEditeur(laDao)
lesServices["editeur"]=srvcE
lesServices["livre"]=None
 
fenetre_principale=Tk()
 
dessiner(fenetre_principale,lesServices)
fenetre_principale.mainloop()
  • ouvert_a_tous/prepas/objet/appli_graphique.txt
  • Dernière modification : 2022/12/03 07:45
  • de 127.0.0.1