Я хочу отобразить список файлов, обрабатываемых из каталога. Если в каталоге много файлов, окно становится больше экрана и обрезается без добавления полосы прокрутки.
Я видел несколько решений для добавления полос прокрутки к виджетам, но я не видел ничего, что могло бы управлять всем окном или как его отображать, только когда содержимое не подходило бы, как большинство других окон приложения. Есть ли команда, позволяющая операционной системе управлять при появлении полосы прокрутки?
Вот код, который у меня есть, на данный момент он просто отображает имена файлов, но я хочу добавить, что с ними сделано позже.
import tkinter
from pathlib import Path
def start():
progressWindow = tkinter.Toplevel(mainWindow)
tkinter.Label(progressWindow,text="File name").grid(row=0, column=0,sticky="w")
tkinter.Label(progressWindow,text="Analysis results").grid(row=0, column=1, sticky="w")
tkinter.Label(progressWindow, text="File moved and renamed").grid(row=0, column=2, sticky="w")
gridRow = 1
sourcePath = Path(r"C:\Users\Sulley\Downloads")
for file in sourcePath.iterdir():
if not file.is_file():
continue
if not file.suffix == ".pdf":
continue
tkinter.Label(progressWindow,text=file.name).grid(row=gridRow,column=0, sticky="w")
gridRow += 1
tkinter.Button(progressWindow,text="Done", command=progressWindow.destroy).grid(row=gridRow, column=1)
mainWindow = tkinter.Tk()
mainWindow.title("Sort Bill PDFs")
# Go/cancel
tkinter.Button(mainWindow,text="Cancel", command=quit).pack()
tkinter.Button(mainWindow,text="Go!", command=start).pack()
mainWindow.mainloop()