Вы назначили tree
в качестве родителя полос прокрутки. Измените их обратно на окно root
и используйте вместо них grid
:
from tkinter import ttk
import tkinter as tk
root = tk.Tk()
tree = ttk.Treeview(root)
tree.grid(row=0,column=0)
scrollbar_vertical = ttk.Scrollbar(root, orient='vertical', command=tree.yview)
scrollbar_vertical.grid(row=0,column=1,sticky="ns")
scrollbar_horizontal = ttk.Scrollbar(root, orient='horizontal', command=tree.xview)
scrollbar_horizontal.grid(row=1,column=0,sticky="ew")
tree.configure(yscrollcommand=scrollbar_vertical.set,xscrollcommand=scrollbar_horizontal.set)
header = "ABCDEFG"
tree["columns"] = [i for i in header]
for i in range(len(header)):
tree.column(header[i], width=100, minwidth=50, anchor="w",stretch=tk.NO)
tree.heading(header[i], text=header[i], anchor='w')
for i in range(15):
tree.insert("",0,values=[i for i in header])
root.mainloop()