Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class ScrollableFrame(ttk.Frame):
- def __init__(self, container, *args, **kwargs):
- super().__init__(container, *args, **kwargs)
- canvas = tk.Canvas(self)
- scrollbar = ttk.Scrollbar(self, orient="vertical", command=canvas.yview)
- self.scrollable_frame = ttk.Frame(canvas)
- self.scrollable_frame.bind(
- "<Configure>",
- lambda e: canvas.configure(
- scrollregion=canvas.bbox("all")
- )
- )
- canvas.create_window((0, 0), window=self.scrollable_frame, anchor="nw")
- canvas.configure(yscrollcommand=scrollbar.set)
- canvas.pack(side="left", fill="both", expand=True)
- scrollbar.pack(side="right", fill="y")
- window = tk.Tk()
- window.geometry('960x540')
- window.title("Peruse for reddit")
- post_frame = ScrollableFrame(window)
- for i in range(50):
- ttk.Label(post_frame.scrollable_frame, text="Sample scrolling label").pack()
- post_frame.pack()
- window.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement