<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Testo fumetto Carattere";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.StileMessaggioDiPostaElettronica18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.TestofumettoCarattere
        {mso-style-name:"Testo fumetto Carattere";
        mso-style-priority:99;
        mso-style-link:"Testo fumetto";
        font-family:"Tahoma","sans-serif";}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 2.0cm 2.0cm 2.0cm;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=IT link=blue vlink=purple><div class=WordSection1><div><div><div><p class=MsoNormal>2015-01-30 8:56 GMT+00:00 Attilio Menegon <<a href="mailto:attilio.menegon@tecnoemmesnc.it" target="_blank">attilio.menegon@tecnoemmesnc.it</a>>:<o:p></o:p></p><div><div><div><p>Salve lista, ho la necessità di realizzare in una GUI in Tkinter una tabella/griglia di inserimento dati come quella presente in basso alla figura allegata. <o:p></o:p></p></div></div></div><div><p class=MsoNormal>Tkinter e' un requisito oppure e' una scelta?<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm'><div><div><div><p>Che si popola sulla base dei valori selezionati a più riprese dalle listbox, poi per ogni rigo/record dovrei poter inserire un widget di tipo edit x imputare le quantità ed eventuali cekb     box di conferma. Avevo pensato di popolare un frame con label, edit, ecc,  e di scorrerlo con le scrollbar, però sul contenitore frame non funzionano.. allora Vi chiedo quale sia il contenitore da utilizzare o sto sbagliando l'approccio.... ho provato persino a popolare una listbox con i widget. Vi chiedo cortesemente di indicarmi la dritta via.<o:p></o:p></p></div></div></div></blockquote><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Allora: *sicuramente* vuoi mettere su un approccio MVC. Da quello non scappi, fidati. Non pensare nemmeno di farne a meno.  <o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Se proprio vuoi rimanere con Tkinter, guardati anche ttk, che contiene un po' di roba tk aggiuntiva. <o:p></o:p></p></div><div><p class=MsoNormal>Quello che a te servirebbe e' un widget come tktable <a href="http://wiki.tcl.tk/1877">http://wiki.tcl.tk/1877</a>. E anche li non so come si comporta a ficcare delle check box dentro la tabella.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Comunque guarda qui:<o:p></o:p></p></div><div><p class=MsoNormal><a href="http://stackoverflow.com/questions/9348264/does-tkinter-have-a-table-widget">http://stackoverflow.com/questions/9348264/does-tkinter-have-a-table-widget</a><o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Possibile che con ttk.Treeview qualcosa ci viene fuori.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Ma possibilmente io mi rivolgerei a Qt o wx. O meglio ancora, andare web-based. Piu' semplice, piu' comodo.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div></div><div><p class=MsoNormal>-- ..: -enrico-<o:p></o:p></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Per prima cosa Grazie Enrico.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Ho cercato in rete tra i link segnalati ed ho trovato dei Widget aggiuntivi per Tkinter i TIX , tra cui c’e’ una grid e altre cose che potrebbero andar bene al caso mio.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Li avete mai provati?, sono compatibili con Python 3? <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p></div></div></div></div></body></html>