Skip to main content

Python UI library built upon Tkinter

Project description

ChichiTk

A python UI library built upon Tkinter, which implements affectedly elegant extensions of existing tkinter widgets. ChichiTk facilitates easy implementation of dropdown menus, nested dropdown menus, progress bars, sliders, icon buttons, and more. CheckEntry and TextBox widgets can execute a callback function whenever their text is edited by the user. ChichiTk AspectFrame retains a specific aspect ratio as flexible frames are resized. ChichiTk ScrollableFrame can contain tkinter elements in a scrollable widget. For exhaustive list of features, visit the wiki tab.

| example.py on Windows

https://user-images.githubusercontent.com/74847576/232877538-c069685a-3265-42d0-9961-73ccd59c9738.mp4

| example.py on Windows - sample user interactions

Installation

Install the module with pip:

pip3 install chichitk

Update existing installation:

pip3 install chichitk --upgrade

Update as often as possible because this library is under active development.

Documentation

The official documentation can be found in the Wiki Tab here:

--> ChichiTk Documentation

Example Program - Stopwatch

The following is a simple Stopwatch program that uses chichitk.Player to manage callbacks:

from tkinter import Tk, Frame, Label
from chichitk import Player

def time_text(time:int, f:int=100):
    hour = time // (3600 * f)
    minute = (time % (3600 * f)) // (60 * f)
    second = (time % (60 * f)) // f
    return f'{hour:0>2}:{minute:0>2}:{second:0>2}.{time % f:0>2}'

app = Tk()
app.title('Stopwatch')
app.config(bg='#28282e')
app.geometry("650x400")

frame = Frame(app)
frame.place(relx=0.5, rely=0.5, relwidth=0.8, relheight=0.6, anchor='center')

label = Label(frame, text='00:00:00.00', bg='#232328', fg='#ffffff',
              font=('Segoe UI bold', 30))
label.pack(fill='both', expand=True)

Play = Player(frame, lambda t: label.config(text=time_text(t)), 0.01,
              bg='#1e1e22', frame_num=12001, frame_rate=100, step_increment=500)
Play.pack(side='bottom', fill='x')

app.mainloop()

This results in the following window:

Example Application - Password Manager

https://user-images.githubusercontent.com/74847576/233730056-cffb5a0d-41db-44e4-ad24-7276406f9ba1.mp4

The Passwords App project can be found here:

--> Project Link

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

chichitk-0.0.6.tar.gz (73.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

chichitk-0.0.6-py3-none-any.whl (81.8 kB view details)

Uploaded Python 3

File details

Details for the file chichitk-0.0.6.tar.gz.

File metadata

  • Download URL: chichitk-0.0.6.tar.gz
  • Upload date:
  • Size: 73.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for chichitk-0.0.6.tar.gz
Algorithm Hash digest
SHA256 fa42f42a5f33836b0adfec8f4f02ab6af6a25e8548d2728c2c9b613147f9b1cb
MD5 9d4b6c98f85541efe5c151018b8da262
BLAKE2b-256 11e2f88840862bb9a915d6f5e2ae4b701bc8bba4f38089e9487bdc91ac21652d

See more details on using hashes here.

File details

Details for the file chichitk-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: chichitk-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 81.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for chichitk-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 fbb3cbf37604ed6ba9eaa2e42132e5c418cd28037071c505db09d69496b5dff3
MD5 920f7b1a9d85eda689552e2eff4e4e9b
BLAKE2b-256 1a8b1a18de7f62dfe7cbdad42beae561a0a592ce69e5c565c3aee8dfe6e3afaf

See more details on using hashes here.

Supported by

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