如何访问Tkinter中超过窗口大小的条目



我正在创建一个包含40个标签和条目的表单。问题是,我可以输入到20,之后窗口大小达到最大值,我看不到下面的条目。我如何在Tkinter主窗口中集成滚动选项?我知道滚动条不能集成到主窗口中,只能集成到小部件中。我想要一些东西,这样我就可以使用鼠标或箭头键滚动或任何东西来查看下面的内容。以下是我的代码:

from Tkinter import *
root = Tk()
root.title('test')
root.geometry("400x400")
for i in range(40):
Label(root, text="Field {} ".format(i)).grid(row=i,column=0)
value=Entry(root).grid(row=i,column=1)
root.mainloop()

输出图像

ListBox

滚动条几乎总是与Listbox、Canvas或Text小部件结合使用。要将垂直滚动条连接到其中一个小部件,您必须做两件事:

  1. 将小部件的yscroll命令回调设置为滚动条的Set方法
  2. 将滚动条的命令设置为小部件的yview方法

示例

from tkinter import *
master = Tk()
scrollbar = Scrollbar(master)
scrollbar.pack(side=RIGHT, fill=Y)
listbox = Listbox(master, yscrollcommand=scrollbar.set)
for i in range(40):

listbox.insert(END, Label(master, text=f"Field {i} "))
listbox.insert(END, Entry(master))
listbox.pack(side=LEFT, fill=BOTH)
scrollbar.config(command=listbox.yview)
mainloop()

最新更新