Easy-to-use Python GUI
kyosohma at gmail.com
Thu Dec 25 01:37:40 CET 2008
On Dec 24, 5:47 pm, "Joel Koltner" <zapwireDASHgro... at yahoo.com>
> Is there an easy-to-use, "function"-based cross-platform GUI toolkit for
> Python out there that's a little more sophisticated than EasyGui? EasyGui
> looks good, but it's a little more restrictive than what I'd like to have, yet
> I'm (stubbornly :-) ) resistant to stepping up to a "full service" GUI toolkit
> such as pyGTK or wxPython where it's all about event loops and callbacks and
> you need to start planning how the GUI affects the overall program flow rather
> than just using a "forms" (or "Wizard")-type approach where you put up a few
> dialogs, users fill in some variables, and your program just sits around
> waiting until "OK" or "Cancel" is clicked.
> One approach that I like comes from SAX BASIC/WinWrap, which is more or less a
> clone of Microsoft's Visual BASIC for Applications, but they (apparently)
> wanted everything to still be human-readable, so they have a simple GUI
> ("form") builder that generates code that looks like this:
> Begin Dialog UserDialog 850,497,"Export Control" ' %GRID:10,7,1,1
> GroupBox 20,7,360,217,"Drill File Generation",.GroupBox1
> CheckBox 40,35,130,14,"Output drill file(s)",.genDrill
> Text 40,63,270,28,"Identify via layers as any that contain this text in
> their names:",.Text
> TextBox 40,98,220,21,.viaLayerName
> Text 40,140,100,14,"Output method:",.Text8
> DropListBox 160,140,180,21,DrillStyle(),.drillStyle
> Text 40,175,130,28,"Select drill table units:",.Text2
> ListBox 200,175,120,28,unitNames(),.unitName
> OKButton 310,469,90,21
> CancelButton 410,469,90,21
> End Dialog
> ' GUI builder generates or modifies everything above, but can also be edited
> by hand
> ' You write the following code...
> Dim dlg As UserDialog
> dlg.genDrill = 1
> ReDim DrillStyle(1)
> DrillStyle(0) = "All Via Layers In One File"
> DrillStyle(1) = "One File Per Via Layer"
> dlg.drillStyle = 1
> This is pretty darned easy for me understand and modify either by hand or with
> the GUI builder. Still, it's quite powerful, since it supports all the common
> GUI elements (text, group boxes, checkboxes, drop-down lists, text boxes,
> buttons, etc.). This is about the level of sophistication I'm looking for.
> Anything like this for Python?
Some people like Boa Constructor, XRC or wxGlade:
Technically, you can switch to IronPython and then use Visual Studio
to design your GUIs and IronPython to control it. I think there's
something similar to Jython and Cocoa as well.
Probably not what you wanted though.
More information about the Python-list