tksheet - python tkinter table widget
This library is maintained with the help of others. If you would like to contribute please read this help section.
Changes for versions 7
+:
- ALL
extra_bindings()
event objects have changed, information here. - The bound function for
extra_bindings()
with "edit_cell"
/"end_edit_cell"
no longer requires a return value and no longer sets the cell to the return value. Use this instead. edit_cell_validation
has been removed and replaced with the function edit_validation()
, information here.- Only Python versions >=
3.8
are supported. tksheet
file names have been changed.- Many other smaller changes, see the changelog for more information.
Features
- Display and modify tabular data
- Stores its display data as a Python list of lists, sublists being rows
- Runs smoothly even with millions of rows/columns
- Edit cells directly
- Cell values can potentially be any class, the default is any class with a
__str__
method - Drag and drop columns and rows
- Multiple line header and index cells
- Expand row heights and column widths
- Change fonts and font size (not for individual cells)
- Change any colors in the sheet
- Treeview mode
- Dropdown boxes
- Check boxes
- Progress bars
- Hide rows and/or columns
- Left
"w"
, Center "center"
or Right "e"
text alignment for any cell/row/column
"""
Versions 7+ have succinct and easy to read syntax:
"""
sheet["A1"].data = "edited cell A1"
column_b = sheet["B"].data
sheet.insert_columns(columns=2, idx=4, undo=True)
sheet.delete_columns(columns=[0, 3], undo=True)
light blue theme
dark theme
treeview mode