Python 如何在表格中添加滑动条?

Python 如何在表格中添加滑动条?,python,tkinter,Python,Tkinter,我一直在创建一个应用程序,其中有我可以添加到表中的客户端,问题是,我需要一个滚动条来滚动所有客户端,因为应用程序的高度是有限的,而客户端不是。 使用tkinter,我找到了一种使用Entry和grid创建表的方法,但是如果我想创建100行呢?它们将在视图之外,所以这就是为什么需要滚动条的原因 对于那些了解Java的人,我想创建一些类似于Jtable的东西,它有一个创建行、删除行的方法,一旦Jtable空间用完,它就会自动生成滚动条 我曾尝试从ttk使用TkTable并处理一些属性,但我更喜欢条目

我一直在创建一个应用程序,其中有我可以添加到表中的客户端,问题是,我需要一个滚动条来滚动所有客户端,因为应用程序的高度是有限的,而客户端不是。 使用tkinter,我找到了一种使用Entry和grid创建表的方法,但是如果我想创建100行呢?它们将在视图之外,所以这就是为什么需要滚动条的原因

对于那些了解Java的人,我想创建一些类似于Jtable的东西,它有一个创建行、删除行的方法,一旦Jtable空间用完,它就会自动生成滚动条

我曾尝试从ttk使用TkTable并处理一些属性,但我更喜欢条目的外观

根=Tk root.geometry1200x900 对于范围10中的i: e=入口浮雕=山脊 e、 gridrow=i,column=2,sticky=N root.mainloop 我创建了一个root=Tk并使用root对它们进行网格化。
您将看到10个条目位于其他条目之上。

当一个窗口包含许多小部件时,它们可能并不都可见。但是,窗口Tk或顶级实例或条目都不可滚动

使窗口内容可滚动的一个解决方案是将所有小部件放在一个框架中,然后使用create_window方法将该框架嵌入画布中

输出:


Tkinter有滚动条,但它只适用于文本、列表框或画布。在互联网上你们可以找到ScrolledFarme的例子,它使用滚动条在画布上滚动框架,你们可以把条目放在这个框架中滚动它们。还是再见谢谢你!这才是我真正想要的。
from tkinter import *

root = Tk()
canvas = Canvas(root)
scroll_y = Scrollbar(root, orient="vertical", command=canvas.yview)

frame = Frame(canvas)

# group of widgets
for i in range(100):
    e = Entry(frame, relief=RIDGE, width = 100)
    e.grid(row=i, column=2, sticky=N)

# put the frame in the canvas
canvas.create_window(0, 0, anchor='nw', window=frame)
# make sure everything is displayed before configuring the scrollregion
canvas.update_idletasks()

canvas.configure(scrollregion=canvas.bbox('all'),
                 yscrollcommand=scroll_y.set)

canvas.pack(fill='both', expand=True, side='left')
scroll_y.pack(fill='y', side='right')

root.mainloop()