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...