首页 文章

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

提问于
浏览
0

编辑:我希望使用 scrollbar 调整 canvas1 的大小 . 当我运行它时,只有 canvas1 是可见的 canvas2 框架上没有剩余的地方 . 我希望框架上的 canvas1 大小接近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()

1 回答

  • 0

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

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

相关问题