ready to use python, need help with GUI decision

Discussion in 'Python' started by Jonathon McKitrick, Mar 3, 2004.

  1. Hi all,

    I am totally hooked on what I have learned about python. I am going to use
    it to develop a simple data entry app I need for some financial record
    keeping.

    I understand tkinter is official and simple to use, but many who use
    wxPython swear by it, and it is gaining ground.

    I would like to run on any platform, but that's not critical. What I want
    to do is support an app that will grow over time, and should look clean. I
    don't want to spend lots of time maintaining GUI code rather than app logic.

    Can anyone offer any advice?

    jm
    --
    My other computer is your Windows box.
     
    Jonathon McKitrick, Mar 3, 2004
    #1
    1. Advertising

  2. > Can anyone offer any advice?

    If PyQt is a possible option for you - choose it. IMHO its marvellous - and
    the signal-slot-mechanism is good for separating gui and logic. The
    designer also works very well. If you want to use it under windows, I think
    purchasing BlackAdder might be a good choice - I think of that myself,
    although under Linux things are a little bit easier because of the gpl'ed
    qt.

    --
    Regards,

    Diez B. Roggisch
     
    Diez B. Roggisch, Mar 3, 2004
    #2
    1. Advertising

  3. > I understand tkinter is official and simple to use, but many who use
    > wxPython swear by it, and it is gaining ground.


    wxPython is easy to use, free, and available on most every platform you
    could want to use.


    > I would like to run on any platform, but that's not critical. What I want
    > to do is support an app that will grow over time, and should look clean. I
    > don't want to spend lots of time maintaining GUI code rather than app logic.


    If you build your application right, maintenance shouldn't be a huge issue.

    While I favor wxPython, it is really the only toolkit I've ever used,
    and can only really say that I enjoy using it.

    PyGTK looks to be about as easy to use, but I have no experience with
    it, so I'll not comment.

    I would argue against using PyQT, if only for the license restrictions
    on Windows.

    I would suggest you not try FXPy (Python's link to the Fox GUI toolkit),
    if only because the latest version is quite old.

    Initially for writing GUIs in Python, I tried tk, but found the learning
    curve to be too steep. It seems to get easier the more you use it.


    - Josiah
     
    Josiah Carlson, Mar 3, 2004
    #3
  4. Jonathon McKitrick

    simo Guest

    If you've got some money to buy a Windows commercial license, or just
    want to program for Linux/GPL, then I'd say go with PyQt. The only
    thing that puts me off is the stupid licensing issues which even the
    PyQt/Qt/BlackAdder folks don't seem to grasp.

    If you don't want to pay anything and go with whatever license you
    want on Windows/Linux, then I'd say go with wxPython. What puts me off
    is that some of the dialogs are completely different between OSes, or
    have limited functionality on Linux.

    If you don't really mind how it looks and don't need a wide range of
    widgets and just want something easy, I'd say go for TKinter.
     
    simo, Mar 4, 2004
    #4
  5. Jonathon McKitrick

    Miki Tebeka Guest

    Hello Jonathon,

    > Can anyone offer any advice?

    I use wxPython here at work and I'm very pleased with it. Native look
    and feel, a lot of widgets ...
    There are some nice UI designers as well (Boa, wxGlade ...). The UI in
    my projects is not that complicated to I write all the GUI in VIm, the
    *Sizer are wonderful.

    HTH.
    Miki
     
    Miki Tebeka, Mar 4, 2004
    #5
  6. Jonathon McKitrick

    Miki Tebeka Guest

    Hello Jonathon,

    > Can anyone offer any advice?

    I use wxPython here at work and I'm very pleased with it. Native look
    and feel, a lot of widgets ...
    There are some nice UI designers as well (Boa, wxGlade ...). The UI in
    my projects is not that complicated to I write all the GUI in VIm, the
    *Sizer are wonderful.

    HTH.
    Miki
     
    Miki Tebeka, Mar 4, 2004
    #6
  7. Jonathon McKitrick

    Kevin Altis Guest

    Well I have to make the obligatory PythonCard plug...

    <plug>
    http://pythoncard.sourceforge.net/
    </plug>

    PythonCard uses wxPython and you can mix "raw" wxPython code into your app
    if needed. Since it is based on wxPython, your apps will work on Windows,
    Linux/GTK, and Mac OS X.

    ka

    "Jonathon McKitrick" <> wrote in message
    news:...
    >
    > Hi all,
    >
    > I am totally hooked on what I have learned about python. I am going to

    use
    > it to develop a simple data entry app I need for some financial record
    > keeping.
    >
    > I understand tkinter is official and simple to use, but many who use
    > wxPython swear by it, and it is gaining ground.
    >
    > I would like to run on any platform, but that's not critical. What I want
    > to do is support an app that will grow over time, and should look clean.

    I
    > don't want to spend lots of time maintaining GUI code rather than app

    logic.
    >
    > Can anyone offer any advice?
    >
    > jm
    > --
    > My other computer is your Windows box.
    >
    >
     
    Kevin Altis, Mar 5, 2004
    #7
  8. Jonathon McKitrick

    Jarek Zgoda Guest

    Kevin Altis <> pisze:
    i
    > Well I have to make the obligatory PythonCard plug...
    >
    > <plug>
    > http://pythoncard.sourceforge.net/
    > </plug>
    >
    > PythonCard uses wxPython and you can mix "raw" wxPython code into your app
    > if needed. Since it is based on wxPython, your apps will work on Windows,
    > Linux/GTK, and Mac OS X.


    Unfortunately, all other toolkits aren't much better, although on X11 I
    would prefer PyQt. Check this one out, if GPL doesn't scare you.

    --
    Jarek Zgoda
    http://jpa.berlios.de/
     
    Jarek Zgoda, Mar 5, 2004
    #8
  9. (simo) wrote in message news:<>...
    > If you've got some money to buy a Windows commercial license, or just
    > want to program for Linux/GPL, then I'd say go with PyQt. The only
    > thing that puts me off is the stupid licensing issues which even the
    > PyQt/Qt/BlackAdder folks don't seem to grasp.
    >


    Why ?
    From there website it seems to be clear:

    "Includes the rights to distribute the run-time elements (except
    mxODBC) with your application."

    So why do you think that this is unclear. Did you found any comments
    from QT ?
     
    Lothar Scholz, Mar 5, 2004
    #9
  10. On Wed, 3 Mar 2004 18:15:44 +0000, Jonathon McKitrick
    <> wrote:

    >
    >Hi all,
    >
    >I am totally hooked on what I have learned about python. I am going to use
    >it to develop a simple data entry app I need for some financial record
    >keeping.
    >
    >I understand tkinter is official and simple to use, but many who use
    >wxPython swear by it, and it is gaining ground.
    >
    >I would like to run on any platform, but that's not critical. What I want
    >to do is support an app that will grow over time, and should look clean. I
    >don't want to spend lots of time maintaining GUI code rather than app logic.
    >
    >Can anyone offer any advice?


    I've tried TkInter, BlackAdder, and Qt. My choice is Qt. TkInter
    seems a little "unpolished", at least for the level of effort I'm
    willing to put in, although I see some really excellent examples of
    highly polished GUI's ( IDLE for example ) so I know it can be done.

    What I use now is Qt Designer, PyQt, and IDLE. This gives me an
    *outstanding* GUI toolkit, an easy GUI Builder, a quick translation to
    Python (using pyuic and a makefile), and a simple, but really solid
    development environment. I'm developing under Linux, but expecting to
    run "native" on all platforms. I haven't tried the Windows version of
    Qt Designer.

    I believe the licensing issue with Qt is overblown. If your work is
    purely non-commercial, use the GPL license. If you are a typical
    commercial developer, it should be no problem to pay $1550 per
    developer license (no runtime royalties). I've heard there are
    problems for commercial developers who can't afford the $1550. I
    would say, don't worry. If your project fails to make a profit, I
    really doubt Trolltech is going to sue you. I think they would be
    quite happy to get the first $1550 of any successful project.

    I think Trolltech's licensing is a model of good citizenship in the
    open-source community and fair sharing of profits from commercial
    work. It allows them to contribute their best version (no
    cripple-ware) to the open-source community, while still earning a
    living as full-time programmers.

    The only thing I would like to see on the licensing is some
    clarification on dealing with the penniless commercial developer.
    Perhaps a limit like "we won't ask for more than 10% of your sales".
    This would only affect developers with total sales less than $15,500.

    -- Dave
     
    David MacQuigg, Mar 6, 2004
    #10
  11. Jonathon McKitrick

    Ville Vainio Guest

    >>>>> "David" == David MacQuigg <> writes:

    David> On Wed, 3 Mar 2004 18:15:44 +0000, Jonathon McKitrick
    David> <> wrote:

    David> I believe the licensing issue with Qt is overblown. If
    David> your work is purely non-commercial, use the GPL license.
    David> If you are a typical commercial developer, it should be no
    David> problem to pay $1550 per developer license (no runtime
    David> royalties). I've heard there are problems for commercial
    David> developers who can't afford the $1550. I would say, don't
    David> worry. If your project fails to make a profit, I really
    David> doubt Trolltech is going to sue you. I think they would be
    David> quite happy to get the first $1550 of any successful
    David> project.

    So you urge people to break copyright law until they can afford to pay
    the license? I would expect such a behaviour to prove extremely
    problematic and dangerous.

    I would suggest instead that all the "valuable", back end parts of a
    program be coded UI-independently (good idea in any case), and then
    finally GUI is tacked on by connecting it to the back end via CORBA
    (or equivalent). That way the GUI (which is worthless w/o the back
    end) can be GPL'd.

    OTOH, I would probably just use GTK or wxPython. In fact, I wouldn't
    even bother learning Qt - GPL or a crapload of Euros probably won't be
    terms an average employer would approve (esp. if you have to use
    Windows at work), so Qt would be restricted to home use alone.

    --
    Ville Vainio http://tinyurl.com/2prnb
     
    Ville Vainio, Mar 6, 2004
    #11
  12. On 07 Mar 2004 00:05:38 +0200, Ville Vainio <>
    declaimed the following in comp.lang.python:

    >
    > I would suggest instead that all the "valuable", back end parts of a
    > program be coded UI-independently (good idea in any case), and then
    > finally GUI is tacked on by connecting it to the back end via CORBA
    > (or equivalent). That way the GUI (which is worthless w/o the back
    > end) can be GPL'd.
    >

    Wonder if it's time someone did an update to an OLD book "The
    Viewport Technician", which was an attempt at pushing a similar
    philosophy. At the time, the book covered the differences in the native
    toolkits of Mac, Apple II GS (!), Amiga, and early Windows.

    --
    > ============================================================== <
    > | Wulfraed Dennis Lee Bieber KD6MOG <
    > | Bestiaria Support Staff <
    > ============================================================== <
    > Home Page: <http://www.dm.net/~wulfraed/> <
    > Overflow Page: <http://wlfraed.home.netcom.com/> <
     
    Dennis Lee Bieber, Mar 7, 2004
    #12
  13. On 07 Mar 2004 00:05:38 +0200, Ville Vainio <>
    wrote:

    >>>>>> "David" == David MacQuigg <> writes:

    >
    > David> On Wed, 3 Mar 2004 18:15:44 +0000, Jonathon McKitrick
    > David> <> wrote:
    >
    > David> I believe the licensing issue with Qt is overblown. If
    > David> your work is purely non-commercial, use the GPL license.
    > David> If you are a typical commercial developer, it should be no
    > David> problem to pay $1550 per developer license (no runtime
    > David> royalties). I've heard there are problems for commercial
    > David> developers who can't afford the $1550. I would say, don't
    > David> worry. If your project fails to make a profit, I really
    > David> doubt Trolltech is going to sue you. I think they would be
    > David> quite happy to get the first $1550 of any successful
    > David> project.
    >
    >So you urge people to break copyright law until they can afford to pay
    >the license? I would expect such a behaviour to prove extremely
    >problematic and dangerous.


    I'm not urging anyone to break the law, not even those few commercial
    developers who can't afford the the license. What I'm saying is that
    if you are in this rare situation, can't afford the licesne, and not
    sure your product will ever be sold, you just have to be careful not
    to release the product before paying your dues. The only "danger" I
    can see is that code developed before you have paid for the commercial
    license could get loose and allow someone to claim it as GPL and avoid
    paying your license. Maybe I'm misunderstanding the problems and
    dangers you forsee. Could you be more specific?

    >I would suggest instead that all the "valuable", back end parts of a
    >program be coded UI-independently (good idea in any case), and then
    >finally GUI is tacked on by connecting it to the back end via CORBA
    >(or equivalent). That way the GUI (which is worthless w/o the back
    >end) can be GPL'd.


    This seems to me a deliberate thwarting of Trolltech's intentions. It
    may be legal, but to me it seems like taking advantage of their
    generosity in offering a GPL license at all. I also question the
    legality. It gets down to a question of whether "connecting via
    CORBA" is equivalent to "linking". There is certainly more danger in
    that than anything I am suggesting. There is also danger on the GPL
    end. It seems like what you are suggesting is no different than
    releasing a program under GPL, but with-holding a key piece for which
    you charge a license.

    >OTOH, I would probably just use GTK or wxPython. In fact, I wouldn't
    >even bother learning Qt - GPL or a crapload of Euros probably won't be
    >terms an average employer would approve (esp. if you have to use
    >Windows at work), so Qt would be restricted to home use alone.


    Once it is clear your project will go commercial, just pay the license
    and avoid the worries. Surly $1550 is no big deal at that point. I
    have never understood the intensity of this debate over the Qt
    licenses. I guess I never will.

    -- Dave
     
    David MacQuigg, Mar 7, 2004
    #13
  14. Jonathon McKitrick

    DH Guest


    > I am totally hooked on what I have learned about python. I am going to use
    > it to develop a simple data entry app I need for some financial record
    > keeping.


    For a simple data entry app, it really doesn't matter as much. But I
    guess if you need it to work on Windows & Mac & Linux, I'd use wxPython
    or Tkinter.

    I assume you will have some text fields and such to add or edit a
    record, and some code to store records in a database perhaps.
    See the dbBrowser sample for PythonCard, which is based on wxPython:
    http://pythoncard.sourceforge.net/samples/dbBrowser.html

    Although for your app you might just want to use a standalone database
    like pysqlite or gadfly instead of mysql.
     
    DH, Mar 7, 2004
    #14
  15. On Thu, Mar 04, 2004 at 08:59:48AM +0200, Miki Tebeka wrote:
    : Hello Jonathon,
    :
    : >Can anyone offer any advice?
    : I use wxPython here at work and I'm very pleased with it. Native look
    : and feel, a lot of widgets ...
    : There are some nice UI designers as well (Boa, wxGlade ...). The UI in
    : my projects is not that complicated to I write all the GUI in VIm, the
    : *Sizer are wonderful.

    I started out with tk/Pwm for my first decent sized project, and I really
    like it. I also decided to take a look at wxPython, just for comparison. I
    like the richness, but on an older laptop, it seems to take much more CPU,
    like Java. Does anyone else find that to be the case?


    jm
    --
    My other computer is your Windows box.
     
    Jonathon McKitrick, Apr 22, 2004
    #15
  16. On Thu, Mar 04, 2004 at 08:59:48AM +0200, Miki Tebeka wrote:
    : Hello Jonathon,
    :
    : >Can anyone offer any advice?
    : I use wxPython here at work and I'm very pleased with it. Native look
    : and feel, a lot of widgets ...
    : There are some nice UI designers as well (Boa, wxGlade ...). The UI in
    : my projects is not that complicated to I write all the GUI in VIm, the
    : *Sizer are wonderful.

    I started out with tk/Pwm for my first decent sized project, and I really
    like it. I also decided to take a look at wxPython, just for comparison. I
    like the richness, but on an older laptop, it seems to take much more CPU,
    like Java. Does anyone else find that to be the case?


    jm
    --
    My other computer is your Windows box.
     
    Jonathon McKitrick, Apr 22, 2004
    #16
  17. Jonathon McKitrick

    Peter Hansen Guest

    Jonathon McKitrick wrote:

    > On Thu, Mar 04, 2004 at 08:59:48AM +0200, Miki Tebeka wrote:
    > : Hello Jonathon,
    > :
    > : >Can anyone offer any advice?
    > : I use wxPython here at work and I'm very pleased with it. Native look
    > : and feel, a lot of widgets ...
    > : There are some nice UI designers as well (Boa, wxGlade ...). The UI in
    > : my projects is not that complicated to I write all the GUI in VIm, the
    > : *Sizer are wonderful.
    >
    > I started out with tk/Pwm for my first decent sized project, and I really
    > like it. I also decided to take a look at wxPython, just for comparison. I
    > like the richness, but on an older laptop, it seems to take much more CPU,
    > like Java. Does anyone else find that to be the case?


    I *think*, given that wxPython is a thin (?) Python wrapper around
    a C++ DLL that makes native calls to the OS, while Tkinter is a
    Python wrapper around a TCL wrapper (complete with TCL interpreter)
    around something that makes native OS calls to the OS, that wxPython
    has an inherent and relatively significant advantage, performance-
    wise. At least, that's my theory. I don't recall having tried
    to compare them in this respect, nor do I recall past discussions
    about it (though I bet Google groups does <wink>).

    -Peter
     
    Peter Hansen, Apr 23, 2004
    #17
    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. ouadid abdelkarim
    Replies:
    0
    Views:
    2,036
    ouadid abdelkarim
    Jul 10, 2003
  2. N4M
    Replies:
    3
    Views:
    820
  3. Abby
    Replies:
    2
    Views:
    4,252
    Derk Gwen
    Aug 21, 2003
  4. Ed Cogburn
    Replies:
    6
    Views:
    454
    Christian Tismer
    Mar 7, 2004
  5. Polerio Babao Jr.II

    wxPython Not Ready for Commercial Use

    Polerio Babao Jr.II, Sep 16, 2004, in forum: Python
    Replies:
    15
    Views:
    874
    Bill Wilkinson
    Sep 19, 2004
Loading...

Share This Page