tkinter创建一个表格
时间: 2024-01-30 17:02:55 浏览: 102
以下是使用Tkinter创建一个表格的示例代码:
```python
from tkinter import Tk, Label, Entry, Button
def create_table(root, rows, columns):
for i in range(rows):
for j in range(columns):
entry = Entry(root, width=10)
entry.grid(row=i, column=j)
root = Tk()
create_table(root, 3, 4)
root.mainloop()
```
这段代码使用Tkinter库创建了一个名为root的顶级窗口,并调用create_table函数来创建一个3行4列的表格。在表格中,每个单元格都是一个Entry小部件,用于输入文本。通过调整create_table函数的参数,可以创建不同大小的表格。
相关问题
tkinter创建表格
可以使用tkinter库来创建表格。下面是一个简单的示例代码:
```python
import tkinter as tk
from tkinter import ttk
def create_table(root):
table = ttk.Treeview(root)
# 添加表格的列
table["columns"]=("Name", "Age")
table.column("#0", width=0, stretch=tk.NO)
table.column("Name", width=100, anchor=tk.CENTER)
table.column("Age", width=100, anchor=tk.CENTER)
# 添加表格的头部
table.heading("#0", text="", anchor=tk.CENTER)
table.heading("Name", text="Name", anchor=tk.CENTER)
table.heading("Age", text="Age", anchor=tk.CENTER)
# 添加表格的行
table.insert(parent='', index='end', iid=0, text="", values=("John Doe", "30"))
table.insert(parent='', index='end', iid=1, text="", values=("Jane Smith", "25"))
table.pack()
root = tk.Tk()
create_table(root)
root.mainloop()
```
这个示例代码创建了一个包含两列的表格,分别为Name和Age。然后添加了两行数据:John Doe(30岁)和Jane Smith(25岁)。运行代码后,会显示一个包含表格的窗口。
python tkinter写一个表格
下面是一个简单的Python tkinter表格示例:
```python
import tkinter as tk
class Table(tk.Frame):
def __init__(self, parent=None, headings=tuple(), rows=tuple()):
super().__init__(parent)
table = tk.Frame(self, borderwidth=1, relief="sunken")
table.grid(sticky="nsew")
self._widgets = []
for row, cells in enumerate([headings] + rows):
current_row = []
for column, cell_value in enumerate(cells):
if row == 0:
label = tk.Label(table, text=cell_value, font=("Helvetica", 12, "bold"), bg="white", fg="black", relief="ridge")
else:
label = tk.Label(table, text=cell_value, font=("Helvetica", 12), bg="white", fg="black", relief="ridge")
label.grid(row=row, column=column, sticky="nsew", padx=1, pady=1)
current_row.append(label)
self._widgets.append(current_row)
for column in range(len(headings)):
table.columnconfigure(column, weight=1)
def set(self, row, column, value):
widget = self._widgets[row+1][column]
widget.configure(text=value)
if __name__ == '__main__':
headings = ("Name", "Age", "Gender")
rows = (
("John Smith", "30", "Male"),
("Jane Doe", "25", "Female"),
("Bob Johnson", "45", "Male")
)
root = tk.Tk()
root.title("Table Example")
table = Table(root, headings=headings, rows=rows)
table.pack(fill="both", expand=True)
root.mainloop()
```
这个表格使用了tkinter模块创建,具有以下功能:
- 支持行和列的数量任意设置;
- 支持行和列的大小自动调整;
- 支持设置单元格的值;
你可以根据自己的需求修改这个表格。
阅读全文