Tkinter widget to display data over multiple columns.
Project description
multiframe_list.py
Compact raw python module that brings the MultiframeList class with it.
It is a tkinter widget that can be used to display data split up over multiple columns.
Able to read into the ttk styling database and apply certain style configurations to
otherwise unstylable Listboxes and exists exclusively because I didn't know about
ttk.Treeview
and was too stubborn to drop existing code.
Installation
Get it by running pip install multiframe_list
.
Example:
import tkinter as tk
from multiframe_list import MultiframeList
def format_price(raw):
dollars, cents = divmod(raw, 100)
return f"${dollars}.{cents:0>2}"
items = (
("Apple", 79, 42),
("Pear", 79, 58),
("Egg", 29, 24),
("HL3", 99999999903, 1),
)
root = tk.Tk()
item_display = MultiframeList(root, inicolumns = (
{"name": "Items", "col_id": "col_items", "sort": False},
{"name": "Price", "col_id": "col_prices", "sort": True,
"formatter": format_price},
{"name": "Stock", "col_id": "col_qty", "sort": False},
))
item_display.set_data({
"col_items": [t[0] for t in items],
"col_prices": [t[1] for t in items],
"col_qty": [t[2] for t in items],
})
# Required for the price formatter.
# If not called, the column would display raw values.
item_display.format()
# item_display.format(("col_prices",)) # would have the same effect.
item_display.grid(sticky = "nesw")
root.mainloop()
Will result in this window:
Documentation
Most information can be found in the docstrings of the MultiframeList's class and its methods.
Other than that:
~ ### ~ ~
*#*
/ s \
___ _
/ -] /| |
___n____m_-_|___|__||_____---_|__
. _ .
.-. ~ ___ ' .
n_|:| . ' __
'-. |_n _ _______ .
| .-' __.
_|:|___ * - [__/
| | ~ ===
* ___ . - ---
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file multiframe_list-4.0.1-py3-none-any.whl
.
File metadata
- Download URL: multiframe_list-4.0.1-py3-none-any.whl
- Upload date:
- Size: 23.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2e334abf7ea6b5ef0f017af27b42cbe30fe3a6f09db69c5921304d9338c49d15 |
|
MD5 | 9601e0c889a8b82f3cc55656ef20e954 |
|
BLAKE2b-256 | 2e86ca8566cbc34c751a92d73b485ae4bd2709044a82b14f738da477af149871 |