python gui builders

Discussion in 'Python' started by me, Nov 16, 2009.

  1. me

    me Guest

    Good People

    I do not write stuff for humans, as it has been my job to remove
    humans from the loop. But I have to make a front end to a
    component database where everything was built in Python.

    I have looked at the Tk stuff that is built into Python -> not
    acceptable. So looking at wxGlade, Boa Constructor, Python Card.
    Also looked at the frames/forms created with QtDesigner, which
    can be used by Python via pyuic. BlackAdder IDE seems to have
    this built-in, but am loathe to buy into another GUI tool for a
    single job.

    I have not been able to find a decent Python gui builder. The
    last time I did gui garbage was with Borland C++ Builder which
    was ok because I was only using win boxen for that project. This
    time I am using both Linux and Win.

    What Python gui builder is well supported, does not require me
    to learn another framework/library, and can crank out stuff for
    multiple platforms ?

    thanks much,
    me
    me, Nov 16, 2009
    #1
    1. Advertising

  2. me

    sturlamolden Guest

    On 16 Nov, 11:06, me <> wrote:

    > What Python gui builder is well supported, does not require me
    > to learn another framework/library, and can crank out stuff for
    > multiple platforms ?


    I use wxFormBuilder. The 3.1 beta can even create wxPython code, but
    it still has some minor issues (e.g. not always creating correct code
    due to missing "self.").

    wxFormBuilder 3.0 can create XRC files, which work excellently with
    wxPython. The drawback is that you must bind event handlers manually,
    instead of having it done automatically (as you can with Python code
    generation in 3.1 beta).

    If you are fine with GPL, or can afford the commercial license, there
    is QtDesigner which works with PyQt. This is a fantastic cross-
    platform GUI tool, if not hte best there is.

    If you are fine with Microsoft only, you can use Windows Forms with MS
    Visual Studio and IronPython.

    If you can use Jython, there are many tools for working with Java
    Swing or SWT.
    sturlamolden, Nov 16, 2009
    #2
    1. Advertising

  3. me

    sturlamolden Guest

    On 16 Nov, 11:39, sturlamolden <> wrote:

    > If you are fine with Microsoft only, you can use Windows Forms with MS
    > Visual Studio and IronPython.


    I also forgot to mention:

    If you can restrict yourself to Windows, you can always use Visual
    Basic or Borland Delphi with pywin32. Either expose your GUI as an
    ActiveX to pywin32 (you have e.g. an MFC binding) or expose your
    Python as an ActiveX to VB/Delphi. The same approach should work (with
    a little bit more work) for C# and VB.NET.
    sturlamolden, Nov 16, 2009
    #3
  4. me

    me Guest

    Read the OP. No, read it again.

    sturlamolden wrote:
    > On 16 Nov, 11:39, sturlamolden <> wrote:
    >
    >> If you are fine with Microsoft only, you can use Windows Forms with MS
    >> Visual Studio and IronPython.

    >
    > I also forgot to mention:
    >
    > If you can restrict yourself to Windows, you can always use Visual
    > Basic or Borland Delphi with pywin32. Either expose your GUI as an
    > ActiveX to pywin32 (you have e.g. an MFC binding) or expose your
    > Python as an ActiveX to VB/Delphi. The same approach should work (with
    > a little bit more work) for C# and VB.NET.
    me, Nov 17, 2009
    #4
  5. me

    Simon Hibbs Guest

    On 16 Nov, 10:06, me <> wrote:

    > What Python gui builder is well supported, does not require me
    > to learn another framework/library, and can crank out stuff for
    > multiple platforms ?


    You're looking for a framework/library that doesn't require you to
    learn it. OK....

    I've had this problem for a few years. I've tried PythonCard,
    WxWidgets with WxDesigner, BoaConstructor, etc. None of them come
    anywhere close to PyQT/QTDesigner.

    Dion't get Blackadder It hasn't been updated for several years and is
    a dead project. In any case it uses QTDesigner for GUI layout anyway.
    You're better off using Eric or Wing if you want a decent IDE.

    QT does have a learning curve of course, but you get a lot of power
    back in return for the investment. I'm just coming to grips with it's
    MVC framework and the book "Rapid GUI Programming with Python and Qt"
    is very helpful with that.

    I wouldn't completely dismiss Tkinter. It's too simple for complex
    GUIs but I still think it has it's place for basic utilities.

    Simon Hibbs
    Simon Hibbs, Nov 17, 2009
    #5
  6. me

    r Guest

    On Nov 17, 12:20 pm, Simon Hibbs <> wrote:

    > I wouldn't completely dismiss Tkinter. It's too simple for complex
    > GUIs but I still think it has it's place for basic utilities.


    Agreed! Tkinter (besides myself) seems to be the whipping boy of
    c.l.py. Tkinter has it's place in Python because of the same
    simplicity people laboriously lament about! Until something else comes
    along that can offer the same benefits of Tkinter and a little extra,
    we are going to keep seeing Tkinter release after release. Guido knows
    what he is doing people, don't sell the guy short!
    r, Nov 17, 2009
    #6
  7. me

    CM Guest

    On Nov 16, 5:06 am, me <> wrote:
    > Good People
    >
    > I do not write stuff for humans, as it has been my job to remove
    > humans from the loop. But I have to make a front end to a
    > component database where everything was built in Python.
    >
    > I have looked at the Tk stuff that is built into Python -> not
    > acceptable. So looking at wxGlade, Boa Constructor, Python Card.
    > Also looked at the frames/forms created with QtDesigner, which
    > can be used by Python via pyuic. BlackAdder IDE seems to have
    > this built-in, but am loathe to buy into another GUI tool for a
    > single job.
    >
    > I have not been able to find a decent Python gui builder. The


    What was your issue with Boa Constructor? It produces wxPython
    code and I find it works quite well (less well on Linux, but if
    you use it in Windows, the app will run in Linux w/ minimal need
    for changes).

    Of course, whatever route you go, you have to learn the widget
    toolkit.

    Che
    CM, Nov 17, 2009
    #7
  8. me

    Joel Davis Guest

    On Nov 16, 5:06 am, me <> wrote:
    > Good People
    >
    > I do not write stuff for humans, as it has been my job to remove
    > humans from the loop. But I have to make a front end to a
    > component database where everything was built in Python.
    >
    > I have looked at the Tk stuff that is built into Python -> not
    > acceptable. So looking at wxGlade, Boa Constructor, Python Card.
    > Also looked at the frames/forms created with QtDesigner, which
    > can be used by Python via pyuic. BlackAdder IDE seems to have
    > this built-in, but am loathe to buy into another GUI tool for a
    > single job.
    >
    > I have not been able to find a decent Python gui builder. The
    > last time I did gui garbage was with Borland C++ Builder which
    > was ok because I was only using win boxen for that project. This
    > time I am using both Linux and Win.
    >
    > What Python gui builder is well supported, does not require me
    > to learn another framework/library, and can crank out stuff for
    > multiple platforms ?
    >
    > thanks much,
    > me


    Glade is pretty easy to use, especially for a simple front end, if you
    already know python, then the amount of GTK you'd have to learn would
    be very minimal (5-15 minute crash course in it should suffice.) build
    your GUI in Glade, link the python code to the xml file, and the go
    back to coding non-gui stuff in no time. The Glade utility is free
    software so there's no expense (unless you get charged by the byte on
    your downloads.)
    Joel Davis, Nov 17, 2009
    #8
  9. me

    Tim Daneliuk Guest

    Simon Hibbs wrote:
    > On 16 Nov, 10:06, me <> wrote:
    >
    >> What Python gui builder is well supported, does not require me
    >> to learn another framework/library, and can crank out stuff for
    >> multiple platforms ?

    >
    > You're looking for a framework/library that doesn't require you to
    > learn it. OK....
    >
    > I've had this problem for a few years. I've tried PythonCard,
    > WxWidgets with WxDesigner, BoaConstructor, etc. None of them come
    > anywhere close to PyQT/QTDesigner.
    >
    > Dion't get Blackadder It hasn't been updated for several years and is
    > a dead project. In any case it uses QTDesigner for GUI layout anyway.
    > You're better off using Eric or Wing if you want a decent IDE.
    >
    > QT does have a learning curve of course, but you get a lot of power
    > back in return for the investment. I'm just coming to grips with it's
    > MVC framework and the book "Rapid GUI Programming with Python and Qt"
    > is very helpful with that.
    >
    > I wouldn't completely dismiss Tkinter. It's too simple for complex
    > GUIs but I still think it has it's place for basic utilities.
    >
    > Simon Hibbs


    +1 Tkinter for the simple stuff

    --
    ----------------------------------------------------------------------------
    Tim Daneliuk
    PGP Key: http://www.tundraware.com/PGP/
    Tim Daneliuk, Nov 17, 2009
    #9
  10. me

    Kevin Walzer Guest

    On 11/17/09 4:25 PM, Tim Daneliuk wrote:

    >
    > +1 Tkinter for the simple stuff
    >


    You can actually use Tkinter to do quite sophisticated GUI's that rival
    anything found in Qt or wx...

    --
    Kevin Walzer
    Code by Kevin
    http://www.codebykevin.com
    Kevin Walzer, Nov 17, 2009
    #10
  11. me

    Dave Cook Guest

    On 2009-11-16, me <> wrote:

    > Also looked at the frames/forms created with QtDesigner, which
    > can be used by Python via pyuic.


    That's what I would recommend. What did you not like about it?

    Dave Cook
    Dave Cook, Nov 18, 2009
    #11
  12. me

    sturlamolden Guest

    On 17 Nov, 19:34, r <> wrote:

    > Agreed! Tkinter (besides myself) seems to be the whipping boy of
    > c.l.py. Tkinter has it's place in Python because of the same
    > simplicity people laboriously lament about! Until something else comes
    > along that can offer the same benefits of Tkinter and a little extra,
    > we are going to keep seeing Tkinter release after release. Guido knows
    > what he is doing people, don't sell the guy short!


    Tkinter is fine, particularly with Tix.

    But I want a GUI designer. I don't like the tedious work of hand-
    coding a GUI!
    sturlamolden, Nov 18, 2009
    #12
  13. On Nov 18, 8:10 am, sturlamolden <> wrote:
    > On 17 Nov, 19:34, r <> wrote:
    >
    > > Agreed! Tkinter (besides myself) seems to be the whipping boy of
    > > c.l.py. Tkinter has it's place in Python because of the same
    > > simplicity people laboriously lament about! Until something else comes
    > > along that can offer the same benefits of Tkinter and a little extra,
    > > we are going to keep seeing Tkinter release after release. Guido knows
    > > what he is doing people, don't sell the guy short!

    >
    > Tkinter is fine, particularly with Tix.
    >
    > But I want a GUI designer. I don't like the tedious work of hand-
    > coding a GUI!


    http://stackoverflow.com/questions/1693939/need-a-gui-builder-for-tkinter-python
    Yinon Ehrlich, Nov 18, 2009
    #13
  14. me

    sturlamolden Guest

    On 18 Nov, 04:21, Dave Cook <> wrote:
    > On 2009-11-16, me <> wrote:
    >
    > > Also looked at the frames/forms created with QtDesigner, which
    > > can be used by Python via pyuic.

    >
    > That's what I would recommend.  What did you not like about it?


    GPL
    sturlamolden, Nov 18, 2009
    #14
  15. me

    Dave Cook Guest

    On 2009-11-18, sturlamolden <> wrote:

    > GPL


    If it's an issue for your project, I suggest wxPython. It's
    cross-platform, fairly complete, and extensible. But the API is
    clunky compared to Qt.

    Dave Cook
    Dave Cook, Nov 18, 2009
    #15
  16. me

    Simon Hibbs Guest

    On 18 Nov, 07:51, sturlamolden <> wrote:

    >
    > GPL


    PyQT is GPL for now, but Qt itself is available under the LGPL as is
    PySide. Eventualy PySide, which tracks the PyQT API, will supplant it
    and the issue will be moot. For now it can be a problem, but PyQT
    developer licenses are very afordable at only a few hundred dollars.
    If a commercial project can't aford that, it's got problems.

    Only you can know enough to make an informed decision. Wx does look
    more usable than last time I used it for a project and is a fine
    option too, for me though QT is the gold standard against all others
    are measured, and generaly found wanting.

    Simon Hibbs
    Simon Hibbs, Nov 18, 2009
    #16
  17. me

    Simon Hibbs Guest

    On 17 Nov, 23:25, Kevin Walzer <> wrote:
    > On 11/17/09 4:25 PM, Tim Daneliuk wrote:
    >
    > > +1 Tkinter for the simple stuff

    >
    > You can actually use Tkinter to do quite sophisticated GUI's that rival
    > anything found in Qt or wx...


    Neither Tkinteror Wx have anything that come close to QGraphicsView,
    the Model-View-Delegate framework, the Phonon multimedia framework
    integration, QtSQL, QtXML, QtSVG, and the many other first grade
    components in Qt. You can substitute components from other frameworks,
    e.g. for database access, but then you lose the integration QtSQL has
    with the model-view-delegate features in other parts of the Qt world.

    Qt is much more than just a GUI framework, it's more of a rival to
    something like the MacOS development libraries, or the .NET framework
    in terms of the library facilities it offers. I think that's why Nokia
    bought into it. Qt provides them with a platform with the potential to
    rival the iPhone dev environment.

    Of course to take full advantage of it you need to invest in learning
    it all, which is non-trivial. It comes at a cost in time and potential
    lock-in. But the point is you can't just say Qt is just like Wx.

    Simon Hibbs
    Simon Hibbs, Nov 18, 2009
    #17
  18. me

    David Bolen Guest

    Simon Hibbs <> writes:

    > I've had this problem for a few years. I've tried PythonCard,
    > WxWidgets with WxDesigner, BoaConstructor, etc. None of them come
    > anywhere close to PyQT/QTDesigner.


    For me, the killer feature missing from of all of the wx-based
    designers is that they require sizer based designs at all stages, not
    even permitting a fixed layout up front as a first draft. Either that
    or any case I've found permitting a fixed layout, then didn't permit
    turning that easily into a sizer-based layout.

    From an overall design perspective, that was the feature I found most
    intriguing in QTDesigner. I could randomly drop stuff around the
    window while doing an initial layout, which is especially helpful when
    you aren't quite sure yet how you want the layout to look. Then you
    can select groups of objects and apply the containers to provide for
    flexible layout.

    I absolutely prefer sizer-based layouts for a final implementation,
    but early in the design stages find it more helpful, and freeing, not
    to be as tied to the containers.

    With that said, for various reasons I still prefer wxPython to Qt, and
    at the moment, find wxFormBuilder the best fit for my own designs
    (even before the direct Python support, just using XRC).

    -- David
    David Bolen, Nov 18, 2009
    #18
  19. me

    Stef Mientki Guest

    Simon Hibbs wrote:
    > On 18 Nov, 07:51, sturlamolden <> wrote:
    >
    >
    >> GPL
    >>

    >
    > PyQT is GPL for now, but Qt itself is available under the LGPL as is
    > PySide. Eventualy PySide, which tracks the PyQT API, will supplant it
    > and the issue will be moot. For now it can be a problem, but PyQT
    > developer licenses are very afordable at only a few hundred dollars.
    > If a commercial project can't aford that, it's got problems.
    >
    > Only you can know enough to make an informed decision. Wx does look
    > more usable than last time I used it for a project and is a fine
    > option too, for me though QT is the gold standard against all others
    > are measured, and generaly found wanting.
    >
    > Simon Hibbs
    >

    Wouldn't it be nice
    if each fan of some form of GUI-package,
    would post it's code (and resulting images) for generating one or two
    standard GUI-forms ?

    Then everyone can judge the differences,
    and see what's simple and not so simple !!

    And of course I'm willing to contribute the wxPython (wrapped in some
    convenience procedures) for it.

    cheers,
    Stef
    Stef Mientki, Nov 18, 2009
    #19
  20. me

    Kevin Walzer Guest

    On 11/18/09 4:15 PM, Simon Hibbs wrote:
    > On 17 Nov, 23:25, Kevin Walzer<> wrote:
    >> On 11/17/09 4:25 PM, Tim Daneliuk wrote:
    >>
    >>> +1 Tkinter for the simple stuff

    >>
    >> You can actually use Tkinter to do quite sophisticated GUI's that rival
    >> anything found in Qt or wx...

    >
    > Neither Tkinteror Wx have anything that come close to QGraphicsView,
    > the Model-View-Delegate framework, the Phonon multimedia framework
    > integration, QtSQL, QtXML, QtSVG, and the many other first grade
    > components in Qt. You can substitute components from other frameworks,
    > e.g. for database access, but then you lose the integration QtSQL has
    > with the model-view-delegate features in other parts of the Qt world.


    A few points of response:

    -I was focusing primarily on the UI bits, not the other parts of Qt.
    People tend to think that Tkinter only has labels, listboxes, buttons
    and menus: recent advances in Tk have greatly expanded and modernized
    the available widgets. There's also a rich econsystem of widget packages
    within Tk that can be wrapped in Tkinter.

    -Qt's support for things like SQL and XML make sense in a Pythonic
    context mainly if you're focusing on their integration with other parts
    of Qt. Python has many of these things just fine on its own, as you
    doubtless know.

    >
    > Qt is much more than just a GUI framework, it's more of a rival to
    > something like the MacOS development libraries, or the .NET framework
    > in terms of the library facilities it offers. I think that's why Nokia
    > bought into it. Qt provides them with a platform with the potential to
    > rival the iPhone dev environment.


    Of course, and I certainly wasn't claiming otherwise.

    >
    > Of course to take full advantage of it you need to invest in learning
    > it all, which is non-trivial. It comes at a cost in time and potential
    > lock-in. But the point is you can't just say Qt is just like Wx.
    >


    wxWidgets (the C++ library) has support for a lot of things other than
    UI bits, as well. wxPython itself is mainly a GUI library because the
    additional features of wxWidgets in C++ are redundant in Python.

    --Kevin

    --
    Kevin Walzer
    Code by Kevin
    http://www.codebykevin.com
    Kevin Walzer, Nov 18, 2009
    #20
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. DaMoe

    The Page Builders

    DaMoe, Oct 2, 2003, in forum: HTML
    Replies:
    30
    Views:
    1,285
  2. Michael
    Replies:
    0
    Views:
    277
    Michael
    Jun 9, 2005
  3. Daniel Pitts

    Builders/Factories and Inheritance.

    Daniel Pitts, Aug 16, 2008, in forum: Java
    Replies:
    6
    Views:
    325
    Daniel Pitts
    Aug 18, 2008
  4. Replies:
    4
    Views:
    410
    Sjouke Burry
    Mar 4, 2009
  5. Kyle Schmitt

    Gui Builders for Ruby

    Kyle Schmitt, Mar 2, 2007, in forum: Ruby
    Replies:
    4
    Views:
    142
    Alex Fenton
    Mar 4, 2007
Loading...

Share This Page