Skip to main content

A wrapper for quickly creating Tkinter code

Project description

RapidTk

a wrapper for Tkinter to create objects faster

rapidTk is a simple and modifiable wrapper for the Tkinter GUI framework.

As Tkinter was one of the first things i learnt while using python i though it would make a good learning excersise into complex tasks and creating packages.

The goal of this project is to move away from the basic boxes of Tkinter and create some very complex objects in a simple and easy to use way while keeping the flexability of Tkinter widgets.

Every object will be a collection of Tkinter widgets with additional logic and features stacked over them.

e.g. autoEntry which provides a basic Entry widget with autocompletion options in a smooth and natrual way, or The WindowManager alongside moveable windows for creating and managing lots of grabbable canvas widgets.

Why not use a better framework like Qt or wx ? Because Tkinter is free for both personal and commercial use. Tkinter is basic which allows high expandability on its widgets, and its simple and easy to learn.

This project does not aim to be the best project in the world or even a concice package. Just a collection of objects that will work with or without eachother and make creating interfaces faster, smoother and much easier.

Feel free to add your own ideas, widgets, expansions and logic to this project.

Examples are in the rapidTk/examples/ directory.

example of basic start. Creates a Frame, a Label, a Button and an Entry, then packs them all.

    root = rapidTk() ##replacment for root = Tk()
    pp = PackProcess() ## creates a process loop to pack objects
    main = pp.add(cFrame(root), side=TOP, fill=BOTH, expand=1) ## creates a basic cFrame (replacemnt Frame) and adds it to the process loop to pack.
    pp.add(cLabel(main, text="This is a basic rapidTk Label."), side=TOP, fill=X) ## creates a basic cLabel and adds it to the process loop to pack.
    pp.add(cButton(main, text="cButton"), side=TOP) ## crates a basic cButton and adds it to the process loop to pack.
    myEntry = pp.add(cEntry(main, value="Some Default Text"), side=TOP, fill=X) ## creates a basic cEntry and adds it to the process loop to pack.
    pp.pack() ## runs the process loop that loops through all added widgets and packs them all with the configured options.
    root.mainloop() ## calls mainloop on the normal Tk() object.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rapidTk-0.0.4.tar.gz (28.0 kB view details)

Uploaded Source

Built Distribution

rapidTk-0.0.4-py3-none-any.whl (32.0 kB view details)

Uploaded Python 3

File details

Details for the file rapidTk-0.0.4.tar.gz.

File metadata

  • Download URL: rapidTk-0.0.4.tar.gz
  • Upload date:
  • Size: 28.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.8

File hashes

Hashes for rapidTk-0.0.4.tar.gz
Algorithm Hash digest
SHA256 c14975b6cab3c06d5f9a0a44b39b744d66f008024dcb2ec7e0a649a629df7f8f
MD5 45f67a51637d5e8f4a4d669baca44d03
BLAKE2b-256 f62dfaaacd52b260131a9bf40d3c1973b21319748279c1f0bf04e89c1323a342

See more details on using hashes here.

File details

Details for the file rapidTk-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: rapidTk-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 32.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.8

File hashes

Hashes for rapidTk-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b2347fe04b608e8427b3632687729a27aa336ec195033f004a9aaf5a7eb96584
MD5 0bce7e47edfae95c84ff8b0df81b0ba7
BLAKE2b-256 0c4baf072bb8564bcf9c4498ca4132f1a50bed5278692c81388eed167f0aad7f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page