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.5.tar.gz (71.5 kB view details)

Uploaded Source

Built Distribution

chichitk-0.0.5-py3-none-any.whl (80.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for chichitk-0.0.5.tar.gz
Algorithm Hash digest
SHA256 997ff87dcba16ea759d2cdbfb0c11397de2b5f8c6f40b1c24f79c7a6933c926d
MD5 d2007f88ad5b6212f8085e2b0f0bfe53
BLAKE2b-256 2c049d0587acc94d5174e7134830473889d6b0dd9204f5b2eb5b82a0feb49d9f

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for chichitk-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 063dfb567911661566cf7db4d2f93d9fd84324a5466dd126ee3e21bcf88998d0
MD5 3f06491553e1ae550433fcd80e5dfc98
BLAKE2b-256 5c6cf6afbf387e5369c4fb0a5bd94f7b11bca20757bf1c2ccf616950bdb3bbf2

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