📅  最后修改于: 2023-12-03 15:06:51.439000             🧑  作者: Mango
Tkinter 是 Python 的标准 GUI 库,它提供了各种组件来创建用户界面。其中包括表格(Table)模块,可以用来显示和编辑二维数据。
要创建一个空的表格,可以使用 Table
类:
from tkinter import *
from tkinter.ttk import *
from tkinter import Table
root = Tk()
table = Table(root, rows=10, cols=5)
table.pack(fill=BOTH, expand=1)
root.mainloop()
这个例子创建了一个 10 行 5 列的空表格,并将其添加到主窗口中。Table
类有许多属性和方法可以用来设置和操作表格。
要向表格中添加数据,需要先创建表格的单元格对象,然后将它们添加到表格中。例如,要将一个列表显示在表格中:
data = [
[1, 'apple', 0.25],
[2, 'banana', 0.50],
[3, 'cherry', 0.75]
]
table = Table(root, rows=len(data), cols=len(data[0]))
table.pack(fill=BOTH, expand=1)
for i, row in enumerate(data):
for j, value in enumerate(row):
cell = Text(table, width=10, height=1)
cell.insert(1.0, str(value))
table.set_cell(i, j, window=cell)
这个例子创建了一个三行三列的表格,并将 data
列表中的数据填充到表格中。它会在每个单元格中创建一个 Text
对象,将数据插入到其中,然后将其添加到表格中。
要允许用户编辑表格,可以添加 command
属性,指定表格的回调函数:
def onCellClick(event):
row, col = event.widget.current_row, event.widget.current_col
print(f"Cell clicked: {row}-{col}")
table = Table(root, rows=10, cols=5, command=onCellClick)
table.pack(fill=BOTH, expand=1)
这个例子将表格的回调函数设置为 onCellClick
,每当用户单击一个单元格时,这个函数就会被调用,并输出被单击的行和列。
Tkinter 的表格模块可以用来显示和编辑二维数据。它提供了丰富的属性和方法,可以轻松地创建、填充和编辑表格。可以在 官方文档 中查看更多的信息和示例。