Tkinter标签页中X轴Scrollbar无法实现Fill=X效果求助
Tkinter标签页X轴滚动条显示异常问题求助
我在Tkinter项目中使用标签页(ttk.Notebook),希望为指定标签页添加X轴和Y轴滚动条。当前Y轴滚动条可正常工作且实现fill=Y效果,但X轴滚动条显示异常,尺寸偏小,无法达到fill=X的效果。尝试多种配置均未解决问题,以下是相关代码及问题截图:
from tkinter import LEFT, font import tkinter as tk from tkinter import ttk root = tk.Tk() root.title('Title') root.state('zoomed') addtab=ttk.Notebook(root) firsttab=tk.Frame(addtab) secondtab=tk.Frame(addtab) thirdtab=tk.Frame(addtab) fourthtab=tk.Frame(addtab) addtab.add(firsttab,text="Summary Input files") addtab.add(secondtab, text="Single Date") addtab.add(thirdtab, text="Two Date") addtab.add(fourthtab, text="Three Date") addtab.pack(expand = 1, fill ="both") my_canvas=tk.Canvas(secondtab) #my_canvas.pack(side=tk.LEFT,fill=tk.BOTH,expand=1) my_scrollbarx=tk.Scrollbar(secondtab,orient=tk.HORIZONTAL,command=my_canvas.xview) my_scrollbarx.pack(side=tk.BOTTOM,fill=tk.X) my_scrollbary=tk.Scrollbar(secondtab,orient=tk.VERTICAL,command=my_canvas.yview) my_scrollbary.pack(side=tk.RIGHT,fill=tk.Y) my_canvas.pack(side=tk.LEFT,fill=tk.BOTH,expand=1) my_canvas.configure(xscrollcommand=my_scrollbarx.set,yscrollcommand=my_scrollbary.set) my_canvas.bind('<Configure>', lambda e:my_canvas.configure(scrollregion=my_canvas.bbox("all"))) root1_2=tk.Frame(my_canvas) my_canvas.create_window((0,0),window=root1_2,anchor="nw") frame1_1=tk.Frame(root1_2) frame1_1.pack(anchor='w') label1=tk.Label(frame1_1,text='Results',fg='red',font=("Arial", 20)) label1.pack() my_canvas1=tk.Canvas(fourthtab) my_canvas1.pack(side=tk.LEFT,fill=tk.BOTH,expand=1) my_scrollbarx1=tk.Scrollbar(fourthtab,orient=tk.HORIZONTAL,command=my_canvas1.xview) my_scrollbarx1.pack(side=tk.BOTTOM,fill=tk.X) my_scrollbary1=tk.Scrollbar(fourthtab,orient=tk.VERTICAL,command=my_canvas1.yview) my_scrollbary1.pack(side=tk.RIGHT,fill=tk.Y) my_canvas1.configure(yscrollcommand=my_scrollbary1.set, xscrollcommand=my_scrollbarx1.set) my_canvas1.bind('<Configure>', lambda e:my_canvas1.configure(scrollregion=my_canvas1.bbox("all"))) root1_21=tk.Frame(my_canvas1) my_canvas1.create_window((0,0),window=root1_21,anchor="nw") frame1_11=tk.Frame(root1_21) frame1_11.pack(anchor='w') label11=tk.Label(frame1_11,text='Results2',fg='red',font=("Arial", 20)) label11.pack() root.mainloop()
问题截图


更新
感谢@acw1668,该问题现已解决。
内容的提问来源于stack exchange,提问作者Orlando
相关产品推荐
相关产品推荐

