Best GUI for small-scale accounting app?

Ed Leafe ed at leafe.com
Tue Dec 28 11:39:12 EST 2004


On Dec 27, 2004, at 5:01 PM, JanC wrote:

>> IMHO this is the worst think for the Python community: you can find
>> one Python only with an excellent support. Great!!!! But on the other
>> hand it is possible to find plenty of GUI tools and for the beginner
>> (and may be not just for the beginner) it is so hard to choose the
>> "proper" one!!!!! The field of GUI tools is so fragmented!!!!
>
> I think the field of GUI frameworks / tools for Python is fragmented
> because it's fragmented outside of Python too...

	I think that the reason things are fragmented in this field is that 
none of the tools are simple enough to learn. They require a great deal 
of studying, experimentation, re-coding, Googling, etc., in order to 
create your first non-trivial GUI app. Once you've gone through all 
that, you'll probably not want to start over again with another tool, 
since you'll face a similar ordeal with that tool.

	This was one of our motivations in developing Dabo: making a tool that 
was easy for any competent Python developer to pick up in a short 
period of time. We're using the wxPython toolkit as the underlying UI 
toolkit, but wrapping as much of it as we can to make the interface to 
the Dabo UI simple. We're also wrapping it to make it independent of 
the underlying UI toolkit; ideally, the same code should work for 
TkInter, wxPython, Qt, etc. For example, I spent yesterday developing 
the menu classes. Here's an example of the wxPython code necessary to 
create a menu and add an item to it that calls a particular method when 
chosen:

menu = wx.Menu()
itmID = wx.NewId()
itm = wx.MenuItem(menu, itmID, text="Close Window")
self.Bind(EVT_MENU, self.onCloseWindow, itmID)

Here's the equivalent in Dabo:

menu = dabo.ui.dMenu()
itm = menu.append("Close Window", self, self.onCloseWindow)

	Note that there is nothing wxPython-ish about the Dabo code. The goal 
is to make GUI development as simple as Python development. If we can 
reach that goal (and yes, I'm quite aware of the difficulty involved), 
it is my belief that there is a good chance that we will reach a 
critical mass where enough people are using the tool that it may become 
a 'standard'.

      ___/
     /
    __/
   /
  ____/
  Ed Leafe
  http://leafe.com/
  http://dabodev.com/




More information about the Python-list mailing list