Горизонтальная полоса прокрутки в дереве tkinter не работаетPython

Программы на Python
Ответить
Anonymous
 Горизонтальная полоса прокрутки в дереве tkinter не работает

Сообщение Anonymous »

Я использую tkinter, pandas и древовидное представление.
Древовидное представление предназначено для отображения файла Excel через filedialog с 15 столбцами, что очень длинно, поэтому мне нужна горизонтальная полоса прокрутки.
Однако полоса прокрутки не работает. Древовидное представление охватывает данные Excel из окна.
Как я могу решить эту проблему?
# Create Excel_Frame for TreeView Excelsheet
Excel_Frame = ttk.Frame(Body_Frame)
Excel_Frame.grid(row=0, column=1)

treeScroll_x = ttk.Scrollbar(Excel_Frame, orient="horizontal")
treeScroll_y = ttk.Scrollbar(Excel_Frame, orient="vertical")

treeScroll_x.pack(side="bottom", fill="x")
treeScroll_y.pack(side="right", fill="y")

treeview = ttk.Treeview(Excel_Frame, show="headings", xscrollcommand=treeScroll_x.set, yscrollcommand=treeScroll_y.set,
height=30)

treeview.pack(side="left", fill="both", expand=True)

treeScroll_x.config(command=treeview.xview)
treeScroll_y.config(command=treeview.yview)

Excel_Frame.grid_columnconfigure(0, weight=1)
Excel_Frame.grid_rowconfigure(0, weight=1)

# Function to load data from Excel to Treeview
def load_data_func():
global filepath
# Clear existing data in Treeview
for item in treeview.get_children():
treeview.delete(item)

# Read Excel File
print("filepath = ", filepath)
selected_sheet = "2020" # Testing specific sheet
excel_file = pd.read_excel(filepath, sheet_name=selected_sheet)

# Set Treeview Header
treeview["columns"] = list(excel_file.columns)
#treeview["show"] = "headings" # Hide the default first column
for col in excel_file.columns:
treeview.heading(col, text=col)
treeview.column(col, width=100, minwidth=150, stretch=False)

# Insert data rows to Treeview
for index, row in excel_file.iterrows():
treeview.insert("", "end", values=list(row))

Это перед загрузкой файла Excel
Изображение

И это после загрузки файла
Изображение

Это иерархия фреймов (если она предусмотрена), Treeview находится в Excel_Frame
root
Main_Frame
Load_Frame
Info_Frame
Body_Frame
Entry_Frame
Button_Frame
Excel_Frame


Подробнее здесь: https://stackoverflow.com/questions/797 ... ot-working
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»