You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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()

问题截图

异常X轴Scrollbar
异常X轴Scrollbar

更新

感谢@acw1668,该问题现已解决。
解决后效果


内容的提问来源于stack exchange,提问作者Orlando

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 17:54:32