Skip to content


Subversion checkout URL

You can clone with
Download ZIP


Raphaël SEBAN edited this page · 132 revisions

tkRAD in english

tkRAD en français

Clone this wiki locally

tkRAD – Tkinter XML widget building

tkRAD: internationalized


  1. Getting started with tkRAD
    1. Introduction
    2. Grabbing a copy
    3. Easy tests with tkRAD.easy.builder
    4. Your first "hello good people!" app
    5. Direct imports
    6. Bug report
  2. App examples with tkRAD
    1. Simple calculator
  3. New features in tkRAD
    1. Since v1.0
    2. Since v1.1
    3. Since v1.2
    4. Since v1.3
    5. Since v1.4 (CAUTION)
    6. Since v1.4.1
    7. Since v1.5
    8. Since v1.6
    9. Since v1.6.1
    10. Since v1.6.2
    11. Since v1.6.3
    12. Since v1.6.4
    13. Since v1.6.5
    14. Since v1.6.6
  4. Creating your first RAD application
    1. Configuring a 'RADApplication'
    2. GUI and CLI implementations
    3. Choosing between RADMainWindow and RADXMLMainWindow
  5. Building an XML menu with Tkinter
    1. A very simple XML menu example
    2. 'Open recent': advanced XML menu example
    3. 'tkmenu' XML Doctype
    4. tkRAD XML attributes support
  6. Using XML widget building with Tkinter
    1. 'tkwidget' XML Doctype
    2. tkRAD XML attributes support
    3. Using RADXMLFrame
  7. Short API Documentation
    1. 'core' package
    2. 'easy' package
    3. 'widgets' package
      1. Daily classes
      2. Less usual classes
    4. 'xml' package
      1. Daily classes
      2. Less usual classes
  8. Contributing to the project
    1. Contributors: getting started
    2. Hall of fame
  9. Disclaimer
    1. Copyright
    2. License


tkRAD is a Python3.2+ library designed to enable really Rapid Application Development (RAD) process by using predefined classes to derive in your own subclasses, with quite useful embedded services such as dynamic Tkinter XML widget building, service manager, events manager, RC configuration manager and so on.

tkRAD is a deliberately short-made API designed for comfort, easiness and simplicity.

tkRAD provides the necessary core tools to quickly start up an application development or for Tkinter widget testing through tkRAD.easy.builder module - see Easy tests with tkRAD.easy.builder.

Return to summary


tkRAD – tkinter Rapid Application Development library.

(c) 2013 Raphaël SEBAN – e-mail:

(c) 2014 Raphaël SEBAN et al.

Return to summary


This project is licensed under the GNU LGPL v3 Lesser General Public License.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program.

If not, see

Return to summary


tkRAD is self-documented in its own source code;

feel free to use:

$ pydoc3 -b

in a UNIX-like console terminal set in the closest parent directory of tkRAD/ e.g.:

$ cd ~/tmp      # where you have ~/tmp/tkRAD/ copied in;

$ pydoc3 -b

and study generated autodoc in your favourite internet browser;

Return to summary


The current public release of tkRAD supports at least:

  • Application frame with tkRAD.widgets.RADApplication class;

  • Lightweight MainWindow with tkRAD.widgets.RADMainWindow class;

  • More complex Tkinter XML widget factory embedded in tkRAD.xml.RADXMLMainWindow class;

  • Automagic XML menu / submenu cascade handling with direct access to submenus through get_object_by_id() class method, event-driven commands support, automatic menu label underlining support and keyboard accelerator support;

  • Tkinter XML widget building through tkRAD.xml.RADXMLFrame generic widget container class;

  • Tkinter XML widget building for easy TESTING through tkRAD.easy.builder module - see Easy tests with tkRAD.easy.builder;

  • some innovative and really useful programming tools in tkRAD.core package modules;

Since tkRAD has been designed for subclassing, if you don't meet your needs, just create your own implementations derived from tkRAD.xml generic classes such as RADXMLBase, RADXMLWidgetBase and RADXMLWidget.

Return to summary


Mandatory requirements:

  • tkRAD works fine with Python v3.2 or later installed on your own OS platform;

  • at least tkinter package must also be installed, which is the common default case when you install Python;

make sure this package really exists on your system by entering in a console terminal:

$ python3

>>> import tkinter    # case-sensitive /!\

if you get an error message, tkinter is NOT installed;

use your favourite package manager to solve this issue;

Return to summary

Optional requirements:

  • only tkRAD.easy.builder2 needs Python v2.7 or later installed to work fine, since this module has been especially designed for these early versions of Python;

  • if you use tkRAD.easy.builder2 with Python v2.7+, you must also have Tkinter package installed, which is the common default case when you install Python2.7+;

make sure this package really exists on your system by entering in a console terminal:

$ python

>>> import Tkinter    # case-sensitive /!\

if you get an error message, Tkinter is NOT installed;

use your favourite package manager to solve this issue;

Return to summary

Bug report

In order to track bugs and fix them correctly, we'd like to hear from you.

If you encountered any problem during the use of tkRAD lib, please leave us a comment and tell us:

  • environment:

    • which platform? (Windows, macOS, Linux)
    • which Python version? (2.7+, 3.2+)
    • which tkRAD version?
    • tkinter installed correctly? (yes/no)
  • context:

    • when did it happen?
      • while trying wiki tutorial code samples?
      • while trying tkRAD.easy.builder features?
      • while trying to write your own app?
  • traceback (optional):

    • are you sure it is NOT an XML source code mistype error?
    • could you copy/paste the console error text, please?
    • could you tell us few words about what happened?

Whatever happened, we'd like to know about it.

You will find an open issue "It did NOT work for me!" at:

Thank you for contributing to make tkRAD a better place for everyone.

Return to summary

Development status


Development Status :: 5 - Production/Stable

At this time, tkRAD library has been reported to work as follows:

  • Linux:

    • TESTED OK under Lubuntu, Xubuntu and Ubuntu;

    • should work quite fine under any Linux distribution;

  • MacOS:

  • MS-Windows:

    • TESTED OK under MS-Windows 8 with Python v3.3.3;

    • tkRAD.easy.builder2 has been TESTED OK for Python v2.7+;

Code has very few platform-dependencies and should remain STABLE in time between each release;

Any platform users feedback is welcome.

Return to summary

History: the little story

For the little story, the very first public release of tkRAD was entirely written with an ASUS 1001PX NETBOOK(!) computer, under a Linux Lubuntu 13.10 distro for the need of a Video Editor: Qut.

It was in December 2013 and it is a TRUE story.


Return to summary

Something went wrong with that request. Please try again.