Я создал холст и указал высоту, используя (ширина, высота), но когда дело доходит до графического интерфейса, он вообще не меняет размер.
atEdit=Frame(Attend,borderwidth=0)
atEdit.grid(row=2,column=0,columnspan=5,sticky='news',pady=(0,10),padx=10)
scrollbar = Scrollbar(atEdit)
scrollbar.grid(row=0,column=5,sticky='ns')
canvas = Canvas(atEdit,bg='black',height=20)
canvas.grid(row=0,column=0,columnspan=5,sticky='news')
scrollbar.config(command = canvas.yview)
left = Frame(canvas,borderwidth=0,bg='#dbdbdb',height=2)
left.grid(row=0,column=0,sticky='news')
right=Frame(canvas,borderwidth=0,bg='white',height=2)
right.grid(row=0,column=1,columnspan=4,sticky='news')
left.bind('<Configure>',lambda event,canvas=canvas:self.onFrameConfigure(canvas))
right.bind('<Configure>',lambda event,canvas=canvas:self.onFrameConfigure(canvas))
Я добавляю метки в'left' и 'right', которые увеличивают размер фреймов, но не должны увеличиваться больше указанного размера.Есть ли способ сделать холст фиксированного размера, даже если я добавлю к нему больше меток и смогу прокручивать его с помощью полосы прокрутки?
def onFrameConfigure(self,canvas):
canvas.configure(scrollregion=canvas.bbox("all"))