codice:
def CreaFile(self):
Elenco=open("Elenco.html",W)
Elenco.write("<html><body>")
Elenco.write("<TABLE BORDER=1 CELLPADDING=2 CELLSPACING=2><TR><TD WIDTH=12%>Nome</TD>\
<TD WIDTH=12%>Cognome</TD><TD WIDTH=12%>E-Mail</TD><TD WIDTH=12%>Gruppo</TD><TD WIDTH=12%>Tel Casa</TD>\
<TD WIDTH=12%>Tel Uff</TD><TD WIDTH=12%>Tel Cell</TD><TD WIDTH=12%>Tel Fax</TD><TD WIDTH=12%>Note</TD></TR>")
for x in self.Lista:
y=self.Lista[x]
Elenco.write("<TR>")
for z in range(9):
El=self.Database[y][z]
if El=="":
El="//"
elif El=="\n":
El="//"
Elenco.write("<TD ALIGN=CENTER>%s</TD>" %(El))
Elenco.write("</TR>")
def Info(self):
tkMessageBox.showinfo("Help","Questa è una rubrica realizzata con Tkinter(Python).\n"
"Cliccando con il destro su un E-Mail la si può modificare o cancellare.\n"
"Maggiori infomazioni nel readme.")
def Scheda(self,Event):
a=self.RubrList.curselection()
b=self.RubrList.get(a)
c=self.Lista[b]
self.c=c
InfoUT=Toplevel(self.ROOT)
Font=Rubrica.Font
self.InfoUT=InfoUT
Label(InfoUT,text="Nome:",font=Font).grid(row=0,column=0,sticky=NE+SW)
Label(InfoUT,text="Cognome:",font=Font).grid(row=1,column=0,sticky=NE+SW)
Label(InfoUT,text="E-Mail:",font=Font).grid(row=2,column=0,sticky=NE+SW)
Label(InfoUT,text="Tel Casa:",font=Font).grid(row=3,column=0,sticky=W)
Label(InfoUT,text="Tel Uff.:",font=Font).grid(row=4,column=0,sticky=W)
Label(InfoUT,text="Tel Cell:",font=Font).grid(row=5,column=0,sticky=W)
Label(InfoUT,text="Tel Fax:",font=Font).grid(row=6,column=0,sticky=W)
Label(InfoUT,text="Gruppo:",font=Font).grid(row=7,column=0,sticky=NE+SW)
Label(InfoUT,text="Note:",font=Font).grid(row=8,column=0,sticky=NE+SW)
Label(InfoUT,text=self.Database[c][0],relief='ridge',font=Font).grid(row=0,column=1,sticky=NE+SW)#Nome
Label(InfoUT,text=self.Database[c][1],relief='ridge',font=Font).grid(row=1,column=1,sticky=NE+SW)#Cognome
Label(InfoUT,text=self.Database[c][2],relief='ridge',font=Font).grid(row=2,column=1,sticky=NE+SW)#email
Label(InfoUT,text=self.Database[c][4],relief='ridge',font=Font).grid(row=3,column=1,sticky=NE+SW)#tel
Label(InfoUT,text=self.Database[c][5],relief='ridge',font=Font).grid(row=4,column=1,sticky=NE+SW)#tel
Label(InfoUT,text=self.Database[c][6],relief='ridge',font=Font).grid(row=5,column=1,sticky=NE+SW)#tel
Label(InfoUT,text=self.Database[c][7],relief='ridge',font=Font).grid(row=6,column=1,sticky=NE+SW)#tel
Label(InfoUT,text=self.Database[c][3],relief='ridge',font=Font).grid(row=7,column=1,sticky=NE+SW)#gruppo
Label(InfoUT,text=self.Database[c][8],height=6,width=30,relief='ridge',font=Font).grid(row=8,column=1,sticky=NE+SW)#note
Button(InfoUT,text="Ok",command=self.OK,font=Font).grid(row=9,column=0,sticky=NE+SW)
Button(InfoUT,text="Elimina Profilo",command=self.Elimina,font=Font).grid(row=9,column=1,sticky=NE+SW)
Button(InfoUT,text="Modifica",command=self.ModificaEM,font=Font).grid(row=2,column=2,sticky=NE+SW)#EMail
Button(InfoUT,text="Modifica",command=self.Modifica_TC,font=Font).grid(row=3,column=2,sticky=NE+SW)#tel
Button(InfoUT,text="Modifica",command=self.Modifica_TU,font=Font).grid(row=4,column=2,sticky=NE+SW)#tel
Button(InfoUT,text="Modifica",command=self.Modifica_TCE,font=Font).grid(row=5,column=2,sticky=NE+SW)#tel
Button(InfoUT,text="Modifica",command=self.Modifica_TFX,font=Font).grid(row=6,column=2,sticky=NE+SW)#tel
Button(InfoUT,text="Modifica",command=self.ModificaG,font=Font).grid(row=7,column=2,sticky=NE+SW)#gruppo
Button(InfoUT,text="Modifica",command=self.ModificaN,font=Font).grid(row=8,column=2,sticky=NE+SW)#note
Label(InfoUT,relief='ridge').grid(row=0,rowspan=2,column=2,sticky=NE+SW)
def Elimina(self):
del self.Database[self.c]
self.Database.close()
self.Database=shelve.open("Database","c")
self.InfoUT.destroy()
self.CL.destroy()
self.RubrList.destroy()
self.Scrl.destroy()
self.CreaFrabeB_a()
def CreaInfo(self):
c=self.c
InfoUT=Toplevel(self.ROOT)
Font=Rubrica.Font
self.InfoUT=InfoUT
Label(InfoUT,text="Nome:",font=Font).grid(row=0,column=0,sticky=NE+SW)
Label(InfoUT,text="Cognome:",font=Font).grid(row=1,column=0,sticky=NE+SW)
Label(InfoUT,text="E-Mail:",font=Font).grid(row=2,column=0,sticky=NE+SW)
Label(InfoUT,text="Tel Casa:",font=Font).grid(row=3,column=0,sticky=W)
Label(InfoUT,text="Tel Uff.:",font=Font).grid(row=4,column=0,sticky=W)
Label(InfoUT,text="Tel Cell:",font=Font).grid(row=5,column=0,sticky=W)
Label(InfoUT,text="Tel Fax:",font=Font).grid(row=6,column=0,sticky=W)
Label(InfoUT,text="Gruppo:",font=Font).grid(row=7,column=0,sticky=NE+SW)
Label(InfoUT,text="Note:",font=Font).grid(row=8,column=0,sticky=NE+SW)
Label(InfoUT,text=self.Database[c][0],relief='ridge',font=Font).grid(row=0,column=1,sticky=NE+SW)#Nome
Label(InfoUT,text=self.Database[c][1],relief='ridge',font=Font).grid(row=1,column=1,sticky=NE+SW)#Cognome
Label(InfoUT,text=self.Database[c][2],relief='ridge',font=Font).grid(row=2,column=1,sticky=NE+SW)#email
Label(InfoUT,text=self.Database[c][4],relief='ridge',font=Font).grid(row=3,column=1,sticky=NE+SW)#tel
Label(InfoUT,text=self.Database[c][5],relief='ridge',font=Font).grid(row=4,column=1,sticky=NE+SW)#tel
Label(InfoUT,text=self.Database[c][6],relief='ridge',font=Font).grid(row=5,column=1,sticky=NE+SW)#tel
Label(InfoUT,text=self.Database[c][7],relief='ridge',font=Font).grid(row=6,column=1,sticky=NE+SW)#tel
Label(InfoUT,text=self.Database[c][3],relief='ridge',font=Font).grid(row=7,column=1,sticky=NE+SW)#gruppo
Label(InfoUT,text=self.Database[c][8],height=6,width=30,relief='ridge',font=Font).grid(row=8,column=1,sticky=NE+SW)#note
Button(InfoUT,text="Ok",command=self.OK,font=Font).grid(row=9,column=0,sticky=NE+SW)
Button(InfoUT,text="Elimina Profilo",command=self.Elimina,font=Font).grid(row=9,column=1,sticky=NE+SW)
Button(InfoUT,text="Modifica",command=self.ModificaEM,font=Font).grid(row=2,column=2,sticky=NE+SW)#EMail
Button(InfoUT,text="Modifica",command=self.Modifica_TC,font=Font).grid(row=3,column=2,sticky=NE+SW)#tel
Button(InfoUT,text="Modifica",command=self.Modifica_TU,font=Font).grid(row=4,column=2,sticky=NE+SW)#tel
Button(InfoUT,text="Modifica",command=self.Modifica_TCE,font=Font).grid(row=5,column=2,sticky=NE+SW)#tel
Button(InfoUT,text="Modifica",command=self.Modifica_TFX,font=Font).grid(row=6,column=2,sticky=NE+SW)#tel
Button(InfoUT,text="Modifica",command=self.ModificaG,font=Font).grid(row=7,column=2,sticky=NE+SW)#gruppo
Button(InfoUT,text="Modifica",command=self.ModificaN,font=Font).grid(row=8,column=2,sticky=NE+SW)#note
Label(InfoUT,relief='ridge').grid(row=0,rowspan=2,column=2,sticky=NE+SW)
def ModificaEM(self):
Modifica(self.InfoUT,"Modifica...")
try:
a=Modifica.Nome
except:
return
self.InfoUT.destroy()
c=self.Database[self.c]
c[2]=a
self.Database[self.c]=c
self.Database.close()
self.Database=shelve.open("Database","c")
self.CreaInfo()
def Modifica_TC(self):
Modifica(self.InfoUT,"Modifica...")
try:
a=Modifica.Nome
except:
return
self.InfoUT.destroy()
c=self.Database[self.c]
c[4]=a
self.Database[self.c]=c
self.Database.close()
self.Database=shelve.open("Database","c")
self.CreaInfo()
def Modifica_TU(self):
Modifica(self.InfoUT,"Modifica...")
try:
a=Modifica.Nome
except:
return
self.InfoUT.destroy()
c=self.Database[self.c]
c[5]=a
self.Database[self.c]=c
self.Database.close()
self.Database=shelve.open("Database","c")
self.CreaInfo()
def Modifica_TCE(self):
Modifica(self.InfoUT,"Modifica...")
try:
a=Modifica.Nome
except:
return
self.InfoUT.destroy()
c=self.Database[self.c]
c[6]=a
self.Database[self.c]=c
self.Database.close()
self.Database=shelve.open("Database","c")
self.CreaInfo()
def Modifica_TFX(self):
Modifica(self.InfoUT,"Modifica...")
try:
a=Modifica.Nome
except:
return
self.InfoUT.destroy()
c=self.Database[self.c]
c[7]=a
self.Database[self.c]=c
self.Database.close()
self.Database=shelve.open("Database","c")
self.CreaInfo()
def ModificaG(self):
ModificaG(self.InfoUT,"Modifica Gruppo...")
try:
a=ModificaG.Nome
except:
return
self.InfoUT.destroy()
c=self.Database[self.c]
c[3]=a
self.Database[self.c]=c
self.Database.close()
self.Database=shelve.open("Database","c")
self.CreaInfo()
def ModificaN(self):
ModificaN(self.InfoUT,"Modifica Note...")
try:
a=ModificaN.Nome
except:
return
self.InfoUT.destroy()
c=self.Database[self.c]
c[8]=a
self.Database[self.c]=c
self.Database.close()
self.Database=shelve.open("Database","c")
self.CreaInfo()
def OK(self):
self.InfoUT.destroy()
self.RubrList.destroy()
self.CL.destroy()
self.Scrl.destroy()
self.CreaFrabeB_a()
Rubrica()