0

I've already tried creating a scrollable canvas and making the widgets it's children. It doesn seem to work. Here's the code I'm working with:

#CALENDAR
##Setup
container = Frame(root)
container.pack(fill=X)
scrollable_canvas = Canvas(container)
scrollbar = Scrollbar(container)
scrollbar.pack( side = RIGHT, fill = Y)
scrollbar.config(command = scrollable_canvas.yview)
scrollable_canvas.config(yscrollcommand=scrollbar.set)
scrollable_canvas.pack(fill=X)
##Class
class Event:
    def __init__(self, master, date, name, start, end, desc):
        self.button = Button(master, text='{}\n{}-{}'.format(name,start,end),command=lambda:self.description(desc))
        self.date = date
    def current(self):
        pass
    def description(self, desc):
        top = Toplevel()
        top.title("Description:")
        label = Label(top, text = desc)
        button = Button(top, text = "Exit",command = top.destroy)
        label.pack()
        button.pack()
        top.mainloop()
    def place(self):
        self.button.pack(fill=X)
for i in range(100):
    Event(container, today, 'IA{}'.format(i), '14:00', '17:30', 'Wegwerqwqrgwrqethq34t32tretr3wrer\nweqre    wqewrwer2er\newrqewrewreregr  q3e2ergwe   efer\nrweffeqfwrbfrweqfwwrfewfbd\nhgdfhhfdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\n\n\n\n\n\\n\n\n?').place()

As you can see if you were to run it, all the buttons do pop up and so does the scrollbar, yet the scrollbar has no effect on the buttons.

0 Answers0