On Thu, Nov 28, 2013 at 4:55 PM, jm.almeras <jm.alme...@nospam.net> wrote: > Thank you ChrisA > > These are good ideas. But looking precisely at widgets I will need, is one > of the GUI builders capable of offering : > > 1) the use of tabs in a form (that excludes Tkinter I believe) > 2) dimensionable and editable arrays of columns and rows like when you open > a table under Access.
I'm assuming it was oversight that had this come to me privately rather than be on list, and am hoping you won't mind my response going to the list. My personal experience with GUI toolkits includes a whole lot that you'll probably never see in your life (VX-REXX, VPREXX, DrRexx, VREXX (yeah, I did a lot with REXX in the 1990s), OWL, OS/2 PM, and various others), but only a few of the modern cross-platform ones. Of the three most popular Python toolkits, I have virtually no experience with two (wx and tk), and my GTK work has mostly been in Pike rather than Python. So I can't say what tkinter is capable of, but certainly GTK will do what you want. GTK's TreeView [1] [2] is capable of what you want. It does take some effort to set it up (I dread the thought of doing it in C - it's fiddly enough in languages where the array/tuple is a first class object), but its power is immense. Don't let the "Tree" put you off - a table view is just a tree where everything is a leaf. As for tabs - if you mean a Notebook[3], that's fully supported and easy to use. Be careful what you do with them, though, it's easy to make a UI that's nigh impossible to find things in if you bury things deep enough. My favorite example of that is adjusting virtual memory settings in Windows (XP; not sure how it is in the newer ones): you go to Control Panel, System properties, Advanced tab, Performance settings button (brings up another dialog), Advanced tab, Change virtual memory button (brings up yet another dialog), and then you have all your controls. Any time you're tempted to create a tab called "Advanced", have a good long think about what else you might call it... and nesting "Advanced" inside "Advanced" is usually a recipe for confusion! [1] C docs: http://www.gtk.org/api/2.6/gtk/GtkTreeView.html [2] Pike docs: http://pike.lysator.liu.se/generated/manual/modref/ex/predef_3A_3A/GTK2/TreeView.html [3] http://www.gtk.org/api/2.6/gtk/GtkNotebook.html ChrisA -- https://mail.python.org/mailman/listinfo/python-list