As a newbie, where should I go if I want to create a small GUI program? [closed] As a newbie, where should I go if I want to create a small GUI program? [closed] tkinter tkinter

As a newbie, where should I go if I want to create a small GUI program? [closed]


You'd be better off thinking/saying/googling wxPython (not wxWidgets), since wxPython is the python wrapper for the wxWidgets C++.

1.) Python is a good language for this. If you are only targeting windows, I'd still do it in .NET/C# though. If you want cross-platform, Python/wxPython all the way.

2.) Yes, the wxPython files should be included in the dist directory. You'll have to of course install wxPython to your development machine. See here for some instructions on how to build. py2exe does produce a single directory with everything you need to run you program. It'll give you an EXE that you can double-click.

3.) I've never used Python's Tkinter with py2exe, but I can't see why it wouldn't work along the lines of wxPython.

You should keep in mind that your finally distributable directory will be 10s of megs (py2exe packs the python interpreter and other libraries needed for you app). Not quite as much as the .NET framework, but doesn't almost everybody have that installed already by now?


If you're not afraid to learn a new language, consider Tcl/Tk. The reason I mention this is Tcl's superior-to-almost-everything distribution mechanism which makes it really easy to wrap up a single file exe that includes everything you need -- the Tcl/Tk runtime, your program, icons, sound files, etc. inside an embedded virtual filesystem. And the same technique you use for one platform works for all. You don't have to use different tools for different platforms.

If that intrigues you, google for starpack (single file that has it all), starkit (platform-independent application) and tclkit (platform-specific runtime).

Tcl/Tk isn't everyone's cup of tea, but as a getting-started GUI language it's hard to beat IMO. If it has an Achilles heel is that it has no printing support. It's surprising, though, how many GUIs don't need printing support these days.


For a multiplatform GUI project i recommend you to use Qt libraries and PyQt.

I recently used them for a small application and i loved both; Qt has a great Gui designer and PyQt slot\signal model worked for me.

You can deploy your app on Osx and Windows using py2app and py2exe; here a useful link that show you how and the possible size result.