使用滚动条的python tkinter画布大小

使用滚动条的python tkinter画布大小,python,canvas,tkinter,Python,Canvas,Tkinter,已编辑:我希望使用滚动条调整画布1的大小。当我运行这个时,只有canvas1是可见的,在canvas2的框架上没有留下任何位置。我希望画布1在框架上的大小接近300*400,当我滚动它以可视化整个框架1000*800时 我想用两块画布构建一个框架。但问题是我不知道如何将第一个画布放入滚动条中。在下面的代码中,画布的大小很大,因为第二个画布没有显示在框架中。我想要的是固定滚动条中第一个画布的大小。我是新来tkinter的,所以我不知道怎么做 我将非常感谢你的帮助 root=Tk() master

已编辑:我希望使用滚动条调整画布1的大小。当我运行这个时,只有canvas1是可见的,在canvas2的框架上没有留下任何位置。我希望画布1在框架上的大小接近300*400,当我滚动它以可视化整个框架1000*800时

我想用两块画布构建一个框架。但问题是我不知道如何将第一个画布放入滚动条中。在下面的代码中,画布的大小很大,因为第二个画布没有显示在框架中。我想要的是固定滚动条中第一个画布的大小。我是新来tkinter的,所以我不知道怎么做 我将非常感谢你的帮助

root=Tk()

master=Frame(root,width=300,height=300)
master.grid(row=0,column=0)

xscrollbar = Scrollbar(master, orient=HORIZONTAL)
xscrollbar.grid(row=1, column=0, sticky=E+W)
yscrollbar = Scrollbar(master)
yscrollbar.grid(row=0, column=1, sticky=N+S)

canvas1=Canvas(master, width=1000, height=800, background='white',xscrollcommand=xscrollbar.set,yscrollcommand=yscrollbar.set)
canvas1.grid(row=0,column=0, sticky=N+S+E+W)
xscrollbar.config(command=canvas1.xview)
yscrollbar.config(command=canvas1.yview)

canvas2=Canvas(master, width=100, height=200, background='pink',xscrollcommand=xscrollbar.set,yscrollcommand=yscrollbar.set)
canvas2.grid(row=2,column=0)

mainloop()

您要做的是将画布大小设置为300x400,然后将画布的scrollregion属性设置为1000*800

canvas1 = Canvas(..., width=300, height=400, scrollregion=(0,0,1000,800))

我不明白如何在滚动条中调整画布的大小,尤其是在滚动条中-画布不在滚动条中。这段代码似乎正是您想要的——您得到了一个1000x800画布和一个100x200画布。我也不知道你说的第二个没有展示是什么意思;我看到粉红色和白色的画布。你能试着改写你的问题吗?