Differences between revisions 1 and 70 (spanning 69 versions)
Revision 1 as of 2002-07-12 22:29:50
Size: 226
Editor: anonymous
Comment: missing edit-log entry for this revision
Revision 70 as of 2006-02-05 23:18:59
Size: 5554
Editor: AlexMartelli
Comment: added PyObjC to list of platform-specific toolkits
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Some available GUI's for Python: '''Note:''' This section is rather incomplete. Don't be too disappointed if you can't find the information you need, but please add any information you can contribute.
Line 3: Line 3:
TkInter '''Todo:''' Would it be useful to have information about the GUIs and development tools in a fixed format to make them more easily comparable (see WebProgrammingTemplate and WebProgrammingTemplateHelp). Some categories: directly supported widgets, addon widgets, layout managers, ...
Line 5: Line 5:
WxWindows ''Maybe it could answer the questions in ChoosingGuiToolkits for each toolkit?''
Line 7: Line 7:
PyQt === Some available GUI toolkits for Python: ===
Line 9: Line 9:
FlTk   || '''Package''' || '''Target''' || '''Notes''' ||
  ||||||<bgcolor='#E0E0FF'> Platform-specific ("native") ||
  || BeThon || BeOS || ||
  || MacPython || MacOS || Supports both OSX and OS9 ||
  || PyObjC || MacOSX || Supports Cocoa Aqua GUIs on the Mac ||
  || Win32All || Windows || Also known by the names of its components: PythonWin (for the UI), Win32Com (for COM/ActiveX), Win32 (for some other parts of the API) ||
  || ["venster"] || Windows || [http://venster.sf.net Venster] is a highly native Windows GUI toolkit for Python based on the ctypes ffi library. The aim of Venster is to be a very lightweight wrapper around the standard Win32 API, making it easy to write slick windows applications in pure Python. ||
  ||||||<bgcolor='#E0E0FF'> Portable ||
  || [:lwickjr/Modules/: GWiz] || ["Tix"] ||GUI engine with integrated GUI builder. Need Alpha testers.||
  || ["Jython"] || Java (swing) || ||
  || TkInter || Tk || Python's "standard" GUI library ||
  || TkZinc || Tk extension || TkZinc is a extension of the Tk Canvas, with transparency, gradient, transformations ||
  || WxPython || WxWidgets || supports Windows/Unix/Mac for now - visit http://www.wxwidgets.org ||
  || ["Wax"] || WxWidgets || A wrapper to WxPython, easier and more "pythonic" ||
  || PythonCard || WxWidgets || Both a framework and GUI builder. Can include wxPython code in PythonCard apps ||
  || PyGtk / PyGnome || Gtk / Gnome || ||
  || PyQt || Qt || Python bindings for the [http://www.trolltech.com/products/qt/ Qt] application development framework ||
  || ["PyKDE"] || Qt / KDE || Python wrappers for the [http://www.kde.org/ KDE] libraries ||
  || PyFltk || FlTk || supports Windows/Unix/Mac - visit http://pyfltk.sourceforge.net||
  || FxPy || FOX || ||
  || PyPicoGUI || [http://picogui.org/ PicoGUI] || python library is included in the main PicoGUI release ||
  || AnyGui || many || single source code runs on many GUI back-ends, including most others in this table, plus ncurses ||
  || PyUi || OpenGL || Specialized GUI Toolkit for generating GUIs for OpenGL programs. ||
  || ["PyGUI"] || MacOS / Gtk || Abstract, pythonic API encapsulating different platforms; At the moment runs on MacOS X/Carbon & Unix/Gtk ||
  || EasyGui || Tk || EasyGUI is a module for very simple, very easy GUI programming in Python. ||
  || PySWT || SWT || PySWT is a Python Binding to the IBM Eclipse SWT library, to provide Python with a cross platform native looking GUI, see http://www.cs.nyu.edu/zilin/pyswt/pmwiki.php?n=PySWT.Introduction ||
  || VTK || many || The Visualization ToolKit (VTK) is an open source, freely available software system for 3D computer graphics, image processing, and visualization. See http://public.kitware.com/VTK/index.php for more info. ||
  || IronPython || .NET/Mono || Python for (originally MS') .NET platform. See http://workspaces.gotdotnet.com/ironpython for more info. ||
  || Nufox || XUL (many) || Nufox is a python, XUL toolkit written ontop of the Twisted Networking Framework and Nevow. The idea is that you should be able to write server-side cross platform XUL applications without writing XUL markup, with little javascript, all from the comfort of python, http://nufox.berlios.de/ ||
Line 11: Line 39:
FoxGui
Line 13: Line 40:
Some available GUI development tools: Anyone for a GuiProgrammingShootout?
Line 15: Line 42:
WingIde === GUI builders: ===
Line 17: Line 44:
TkinterIdle   || '''IDE''' ||'''Target'''||'''Notes'''||
  ||BoaConstructor || WxPython ||GPL, Alpha, but starting to mature. Useful for debugging wxPython code!||
  || BlackAdder || PyQt ||Commercial, $50-400||
  || [http://www.die-offenbachs.de/detlev/eric3.html Eric3] || PyQt ||GPL||
  || [:lwickjr/Modules/: GWiz] || ["Tix"] ||GUI engine with integrated GUI builder. Need Alpha testers.||
  || PythonWorks || TkInter ||Commercial, $400 for single licence.||
  || PythonCard || PythonCard, WxPython ||Python License. Alpha.||
  || WxDesigner || WxPython ||Commercial Student EUR 29, Single user EUR 129||
  || WxGlade || WxPython ||MIT License, Alpha.||
Line 19: Line 54:
BoaConstructor === Links ===
Line 21: Line 56:
BlackAdder CameronLaird's personal notes on Python GUIs [http://phaseit.net/claird/comp.lang.python/python_GUI.html] includes over 25 links to toolkits and techniques for connecting python with a GUI.
Line 23: Line 58:
PythonWorks Other places to look are Thinki:PythonGuis at Thinki, and http://sensei.co.il/python/ui.html .
Line 25: Line 60:
PythonCard [http://www.opendocs.org/ Opendocs] has some material on Qt programming with python for on-line reading.
Line 27: Line 62:
WxDesigner http://www.awaretek.com/toolkits.html - Choose Your GUI Toolkit: Find Your GUI Toolkit for Python based on your preferences. Quick cgi application which helps you make a choice. See also [http://awaretek.com/plf.html Python City].

Note: This section is rather incomplete. Don't be too disappointed if you can't find the information you need, but please add any information you can contribute.

Todo: Would it be useful to have information about the GUIs and development tools in a fixed format to make them more easily comparable (see WebProgrammingTemplate and WebProgrammingTemplateHelp). Some categories: directly supported widgets, addon widgets, layout managers, ...

Maybe it could answer the questions in ChoosingGuiToolkits for each toolkit?

Some available GUI toolkits for Python:

  • Package

    Target

    Notes

    Platform-specific ("native")

    BeThon

    BeOS

    MacPython

    MacOS

    Supports both OSX and OS9

    PyObjC

    MacOSX

    Supports Cocoa Aqua GUIs on the Mac

    Win32All

    Windows

    Also known by the names of its components: PythonWin (for the UI), Win32Com (for COM/ActiveX), Win32 (for some other parts of the API)

    ["venster"]

    Windows

    [http://venster.sf.net Venster] is a highly native Windows GUI toolkit for Python based on the ctypes ffi library. The aim of Venster is to be a very lightweight wrapper around the standard Win32 API, making it easy to write slick windows applications in pure Python.

    Portable

    [:lwickjr/Modules/: GWiz]

    ["Tix"]

    GUI engine with integrated GUI builder. Need Alpha testers.

    ["Jython"]

    Java (swing)

    TkInter

    Tk

    Python's "standard" GUI library

    TkZinc

    Tk extension

    TkZinc is a extension of the Tk Canvas, with transparency, gradient, transformations

    WxPython

    WxWidgets

    supports Windows/Unix/Mac for now - visit http://www.wxwidgets.org

    ["Wax"]

    WxWidgets

    A wrapper to WxPython, easier and more "pythonic"

    PythonCard

    WxWidgets

    Both a framework and GUI builder. Can include wxPython code in PythonCard apps

    PyGtk / PyGnome

    Gtk / Gnome

    PyQt

    Qt

    Python bindings for the [http://www.trolltech.com/products/qt/ Qt] application development framework

    ["PyKDE"]

    Qt / KDE

    Python wrappers for the [http://www.kde.org/ KDE] libraries

    PyFltk

    FlTk

    supports Windows/Unix/Mac - visit http://pyfltk.sourceforge.net

    FxPy

    FOX

    PyPicoGUI

    [http://picogui.org/ PicoGUI]

    python library is included in the main PicoGUI release

    AnyGui

    many

    single source code runs on many GUI back-ends, including most others in this table, plus ncurses

    PyUi

    OpenGL

    Specialized GUI Toolkit for generating GUIs for OpenGL programs.

    ["PyGUI"]

    MacOS / Gtk

    Abstract, pythonic API encapsulating different platforms; At the moment runs on MacOS X/Carbon & Unix/Gtk

    EasyGui

    Tk

    EasyGUI is a module for very simple, very easy GUI programming in Python.

    PySWT

    SWT

    PySWT is a Python Binding to the IBM Eclipse SWT library, to provide Python with a cross platform native looking GUI, see http://www.cs.nyu.edu/zilin/pyswt/pmwiki.php?n=PySWT.Introduction

    VTK

    many

    The Visualization ToolKit (VTK) is an open source, freely available software system for 3D computer graphics, image processing, and visualization. See http://public.kitware.com/VTK/index.php for more info.

    IronPython

    .NET/Mono

    Python for (originally MS') .NET platform. See http://workspaces.gotdotnet.com/ironpython for more info.

    Nufox

    XUL (many)

    Nufox is a python, XUL toolkit written ontop of the Twisted Networking Framework and Nevow. The idea is that you should be able to write server-side cross platform XUL applications without writing XUL markup, with little javascript, all from the comfort of python, http://nufox.berlios.de/

Anyone for a GuiProgrammingShootout?

GUI builders:

CameronLaird's personal notes on Python GUIs [http://phaseit.net/claird/comp.lang.python/python_GUI.html] includes over 25 links to toolkits and techniques for connecting python with a GUI.

Other places to look are PythonGuis at Thinki, and http://sensei.co.il/python/ui.html .

[http://www.opendocs.org/ Opendocs] has some material on Qt programming with python for on-line reading.

http://www.awaretek.com/toolkits.html - Choose Your GUI Toolkit: Find Your GUI Toolkit for Python based on your preferences. Quick cgi application which helps you make a choice. See also [http://awaretek.com/plf.html Python City].

GuiProgramming (last edited 2024-04-09 18:58:46 by FeodorFitsner)

Unable to edit the page? See the FrontPage for instructions.