Форум сайта python.su
0
Требуется, чтобы сам холст был большим (например, 1500х1500 точек), а в рабочей области виднелась лишь его часть (например, 800x800 точек). Вертикальный и горизонтальный скролбары должены позволять прокручивать холст и отображать изначально скрытые области.
Подключить скролбар к холсту у меня получилось. Но дальше не могу понять, что надо сделать?
from tkinter import *
window = Tk()
canv = Canvas(window,width=400,height=400,bg="lightgreen")
x_scr = Scrollbar(window,command=canv.xview)
y_scr = Scrollbar(window,command=canv.yview)
canv.configure(xscrollcommand=x_scr.set)
canv.configure(yscrollcommand=y_scr.set)
canv.grid(row=0,column=0)
x_scr.grid(row=1,column=0,sticky=EW)
y_scr.grid(row=0,column=1,sticky=NS)
window.mainloop()
Офлайн
18
from tkinter import *
window = Tk()
canv = Canvas(window,width=400,height=400,bg="lightgreen")
canv.config(scrollregion=(0,0,1500, 1500))
x_scr = Scrollbar(window,command=canv.xview,orient='horizontal')
y_scr = Scrollbar(window,command=canv.yview)
canv.configure(xscrollcommand=x_scr.set)
canv.configure(yscrollcommand=y_scr.set)
canv.grid(row=0,column=0)
x_scr.grid(row=1,column=0,sticky=EW)
y_scr.grid(row=0,column=1,sticky=NS)
canv.create_line(10,10,500,500,width=3)
window.mainloop()
Офлайн
0
Спасибо
Офлайн