lrndnl
Profilo di
Nome | lrndnl |
---|---|
Indirizzo email | n/a |
Messaggi | 26 |
-
- 2016-04-27 23:00:41
- Re: Ancora rubrica
- Forum >> Principianti
- niente non mi ci raccapezzo..
non capisco come integrare il codice.
Ho fatto varie prove ma mi dice che la lista è n oggetto di tipo "None" e posso farci il sugo
-
- 2016-04-27 21:18:58
- Re: Ancora rubrica
- Forum >> Principianti
- Grazie ,provo subito !!
-
- 2016-04-27 15:44:56
- Ancora rubrica
- Forum >> Principianti
- Ancora io,
for contatti in dati : riga+=1 Fnome=str(daticont1) Label(FinestraCancella, text=Fnome).grid(row=riga ,column =1) Checkbutton(FinestraCancella,text="",variable=var,onvalue="1", offvalue="0").grid(row=riga ,column =0) Fcognome=str(daticont2) Label(FinestraCancella, text=Fcognome).grid(row=riga,column=3) Ftelefono=str(daticont3) Label(FinestraCancella, text=Ftelefono).grid(row=riga ,column=5) Findirizzo=str(daticont4) Label(FinestraCancella, text=Findirizzo).grid(row=riga, column=7) Fmail=str(daticont5) Label(FinestraCancella, text=Fmail).grid(row=riga, column=9) cont+=1
con questo for prendo l'elenco di tutto quello che ho nel db e ci metto vicino una checkbox.
Il risultato è in allegato.
Quello che vorrei fare adesso è cancellare i contatti spuntati come posso ricavare le checkbox attive ?
Vorrei che premendo il bottone mi dia l'elenco di tutti gli id checkati (poi vedo come andare a cancellare) in una lista o in una tupla...
Come posso fare ???
--- Ultima modifica di lrndnl in data 2016-04-27 16:15:47 ---
--- Ultima modifica di lrndnl in data 2016-04-27 16:17:14 ---
--- Ultima modifica di lrndnl in data 2016-04-27 16:18:03 ---
--- Ultima modifica di lrndnl in data 2016-04-27 16:18:22 ---
-
- 2016-04-27 09:25:59
- Tkinter allineamento e tktable
- Forum >> Programmazione Python >> GUI
- Buongiorno,
def finestracerca(self,dati): self.a = len(dati) self.FinestraCerca=Tk() self.FinestraCerca.geometry("500x500") self.FinestraCerca.title("Contatti trovati") if self.a == 1: etic=Label(self.FinestraCerca, text="Ho trovato 1 contatto!!",fg="red",bg="yellow",font=("Helvetica",12)) etic.grid(row=0,sticky=N) elif self.a==0: etic=Label(self.FinestraCerca, text="Non ho trovato contatti",font=("Helvetica",12),fg="red",bg="yellow") etic.grid(row=0,sticky=N) else: etic=Label(self.FinestraCerca, text="Ho trovato " +str(self.a)+ " contatti!!",font=("Helvetica",12),fg="red",bg="yellow") etic.grid(row=0,sticky=N) Label(self.FinestraCerca, text="Nome").grid(row=20,column =1, sticky=S) Label(self.FinestraCerca, text="Cognome",).grid(row=20,column=5 ,sticky=S) Label(self.FinestraCerca, text="Indirizzo").grid(row=20,column=10, sticky=S) Label(self.FinestraCerca, text="Telefono").grid(row=20, column=15, sticky=S) Label(self.FinestraCerca, text="Mail").grid(row=20, column=20, sticky=S) Label(self.FinestraCerca, text="Codice Fiscale").grid(row=20, column=25, sticky=S) self.cont = 0 self.riga=30 for contatti in dati : self.riga+=1 self.Fnome=str(dati[self.cont]1) Label(self.FinestraCerca, text=self.Fnome).grid(row=self.riga ,column =1, sticky=W) self.Fcognome=str(dati[self.cont]2) Label(self.FinestraCerca, text=self.Fcognome).grid(row=self.riga,column=6, sticky=W) self.Ftelefono=str(dati[self.cont]3) Label(self.FinestraCerca, text=self.Ftelefono).grid(row=self.riga ,column=11, sticky=W) self.Findirizzo=str(dati[self.cont]4) Label(self.FinestraCerca, text=self.Findirizzo).grid(row=self.riga, column=16, sticky=W) self.Fmail=str(dati[self.cont]5) Label(self.FinestraCerca, text=self.Fmail).grid(row=self.riga, column=21, sticky=W) self.cont+=1
ho questo pezzo di codice che mi dovrebbe, data una tupla , Scrivere sopra il numero di contatti trovati (a mò di titolo) e sotto i risultati ma non riesco ad allineare tutto (sto provando ad installare tktable ma non so come ,altri metodi ?)
Il risultato è questo :
help..
-
- 2016-04-27 08:34:49
- Re: Moduli
- Forum >> Principianti
- Risolto il ciclo (mancava l'incremento di self.riga ,in pratica sovrascriveva le righe :angry
Nessuno sa nulla di tk table ?
Grazie.
-
- 2016-04-26 10:31:38
- Re: Moduli
- Forum >> Principianti
- Ok modificato e lavorato un pò sul codice.
1)Non riesco a capire come installare tktable (vorrei riportare i dati in una tabella per ora lo ho fatto con le LAbel non sapendo come altro fare,ogni suggerimento è bene accetto)
2)Ho questo pezzo di codice .
self.cont = 0 self.a = len(dati) self.riga=10 for contatti in dati : self.Fnome=str(dati[self.cont]1) Label(self.FinestraCerca, text=self.Fnome).grid(row=self.riga ,column =1) self.Fcognome=str(dati[self.cont]2) Label(self.FinestraCerca, text=self.Fcognome).grid(row=self.riga,column=6) self.Ftelefono=str(dati[self.cont]3) Label(self.FinestraCerca, text=self.Ftelefono).grid(row=self.riga ,column=11) self.Findirizzo=str(dati[self.cont]4) Label(self.FinestraCerca, text=self.Findirizzo).grid(row=self.riga, column=16) self.Fmail=str(dati[self.cont]5) Label(self.FinestraCerca, text=self.Fmail).grid(row=self.riga, column=21) self.cont+=1 print self.cont
Mi spiegate che sbaglio ????
Dati è la seguete tupla formata da tuple:((4, 'james', 'pallotta', '333', 'strada terni', '[email protected]'), (5, 'daniele', 'pallotta', '534534', 'piazza la bomba e scappa', '[email protected]'))
non capisco perchè non riesco ad accedere a tutti gli elementi ma solo a 1
in teoriaself.Fnome=str(dati[self.cont]1)
mi dovrebbe accedere la prima volta all'elemento 0 della tupla dati e di questa prendere l'elemento 1 ,il nome l'id non mi interessa,
poi finito tutto portare cont a 1(effettivamente lo fa printandolo) e quindi prendere l'elemento 1 della tupla ,quindi la seconda tupla-figlia e diquesta prendere l'elemento 1 ma non lo fa..
--- Ultima modifica di lrndnl in data 2016-04-26 22:42:10 ---
--- Ultima modifica di lrndnl in data 2016-04-26 22:47:02 ---
--- Ultima modifica di lrndnl in data 2016-04-26 22:47:22 ---
--- Ultima modifica di lrndnl in data 2016-04-26 22:48:25 ---
-
- 2016-04-26 09:26:30
- Moduli
- Forum >> Principianti
- Scusate ho molta confusione (parliamo di windows) su come installare nuovi moduli in python.
Dovrei installare tktable ma non lo trovo.
Ho cercato su internet ma ne sanno meno di me pare..
A parte i consigli "butta windows" che capisco ma non mi sono utili vorrei capire dove scaricare i moduli.
A quanto ricordo poi devo solo scaricarli nella cartella packages
-
- 2016-04-25 22:28:13
- Re: Rubrica telefonica
- Forum >> Principianti
- Ho risolto !!!
mettendo cont = 0 all'interno del ciclo lo azzeravo sempre e quindi mi prendeva sempre l'elemento 0 !!!
messo fuoir dal ciclo va!
-
- 2016-04-25 21:46:36
- Re: Rubrica telefonica
- Forum >> Principianti
- Ciao ho riscritto tutto da capo.
Ho un problemino
Questa funzione è legata ad un bottone che cerca nel DB mysql contatti con quel nomeo cognome:
def cerca():
dict={}
DBnome=e1.get()
DBcognome=e2.get()
cursore = connessione.cursor()
cursore.execute("select * FROM nomi where nome='%s' or cognome ='%s'" %(DBnome,DBcognome))
dati = cursore.fetchall()
a = len(dati)
print dati
if a == 1:
print "Ho trovato 1 contatto"
elif a==0:
print "Non ho trovato contatti."
else:
print "Ho trovato " + str(a) + " contatti !!"
numcontatti= a-1
for contatto in range(0,a):
cont = 0
print "ID = " +str(daticont0),
print "\t Nome = " + str(daticont1),
print "\t Cognome = " + str(daticont2),
print "\t Telefono = " + str(daticont3)
print "\t Indirizzo = " + str(daticont4),
print "\t Mail = " + str(daticont5)
cont+=1
Si connete al DB cerca conta correttamente il numero di record e mi ritorna una tupla di tuple con i risultati :
((3, 'daniele', 'x', '3453453', 'via cia ociao', '[email protected]'), (5, 'daniele', 'pallotta', '534534', 'piazza la bomba e scappa', '[email protected]'))
La struttura del DB è ID NOME COGNOME TELEFONO INDIRIZZO MAIL.
Ora io qui ciclo la tupla per ritornare i dati :
for contatto in range(1,a):
cont = 0
print "ID = " +str(daticont0),
print "\t Nome = " + str(daticont1),
print "\t Cognome = " + str(daticont2),
print "\t Telefono = " + str(daticont3)
print "\t Indirizzo = " + str(daticont4),
print "\t Mail = " + str(daticont5)
cont+=1
ma mi torna 2 volte lo stesso contatto !!!
ID = 3 Nome = daniele Cognome = x Telefono = 3453453
Indirizzo = via cia ociao Mail = [email protected]
ID = 3 Nome = daniele Cognome = x Telefono = 3453453
Indirizzo = via cia ociao Mail = [email protected]
perchè ??
la mia idea era di partire dall'elemento 0 della tupla(cont) e prenderne a sua volta l'elemento 0 (ID) e andare avanti.
ora dovrebbe rientrare nel ciclo (a = 2) prendere l'elemento 1 della tupla (quindi la secondatupla "figlia") e riscrivere i dati ma in realtà riscrive lo stesso contatto.
forse è meglio usare while?
Grazie come sempre !!
-
- 2016-04-21 15:04:44
- Re: Rubrica telefonica
- Forum >> Principianti
- Orsogrizzly said @ 2016-04-21 14:53:14:Voglio aggiungere altri link per Tkinter :
http://infohost.nmt.edu/tcc/help/pubs/tkinter/web/entry.html
http://www.webalice.it/srosta/tkinter005.html#Componenti%20della%20GUI1
spero ti possa essere utile
--- Ultima modifica di Orsogrizzly in data 2016-04-21 15:03:06 ---Grazie mille !!
Tutto mi è utile...