Taблица treeview в tkinker вылазит за границы окна
Есть небольшой интерфейс на tkinker. в нем три кнопки и таблица из 50 столбцов. При запуске возникает две проблемы:
- Таблица вылезает за рамки окна. Не получается это поправить, ни при методе
pack()
, ни при методеgrid()
. - Не получается добавить к таблице прокрутку, она просто не появляется при таком коде:
scrollbar = ttk.Scrollbar(window,orient=HORIZONTAL,command=table.xview)
table.configure(xscrollcommand=scrollbar.set)
scrollbar.pack()
Код программы, который есть на данный момент:
from tkinter import *
from tkinter import ttk
window = Tk()
window.config(bg='#C9C5C5')
window.title("Добро пожаловать в приложение PythonRu")
window.geometry('1600x900')
frame_buttons = Frame(window)
frame_buttons.pack(side=LEFT, fill=BOTH)
frame_table = Frame(window)
frame_table.pack(side=RIGHT, fill=BOTH)
start = Button(frame_buttons, text="Старт", width=13, height=2, bg='#B5B2B2', command=lambda: print_reg_values(registers_list, tree))
start.pack(side=TOP)
stop = Button(frame_buttons, text="Стоп", width=13, height=2, bg='#B5B2B2', command=stop_func)
stop.pack(side=TOP)
downdload_file = Button(frame_buttons, text="Загрузить в файл", width=13, height=2, bg='#B5B2B2', command=lambda: download(registers_list))
downdload_file.pack(side=TOP)
columns_list = ['Время']
for i in range(1, 51):
columns_list.append(i)
columns = tuple(columns_list)
table = ttk.Treeview(frame_table, columns=columns, show="headings")
table.pack(fill=BOTH, expand=True)
table.heading("Время", text="Время")
table.column('Время', stretch=NO, width=50)
for i in range(1, 51):
table.heading(i, text=i)
table.column(i, stretch=NO, width=35, anchor=CENTER)
scrollbar = ttk.Scrollbar(window,orient=HORIZONTAL,command=table.xview)
table.configure(xscrollcommand=scrollbar.set)
scrollbar.pack()
window.mainloop()
Источник: Stack Overflow на русском