Untitled

 avatar
unknown
plain_text
5 months ago
985 B
4
Indexable
class CloseButton(tk.Canvas):
    def __init__(self, parent, command, size=30, **kwargs):
        super().__init__(parent, width=size, height=size, **kwargs)
        self.size = size
        self.command = command
        self.configure(bg='#2a2a2a', highlightthickness=0)
        self.bind('<Button-1>', lambda e: command())
        self.bind('<Enter>', self.on_enter)
        self.bind('<Leave>', self.on_leave)
        self.draw()

    def draw(self, hover=False):
        self.delete('all')
        color = '#ff6b6b' if hover else '#ffffff'
        padding = self.size * 0.3
        self.create_line(padding, padding, self.size-padding, self.size-padding, 
                        fill=color, width=2.5)
        self.create_line(self.size-padding, padding, padding, self.size-padding, 
                        fill=color, width=2.5)

    def on_enter(self, event):
        self.draw(hover=True)

    def on_leave(self, event):
        self.draw(hover=False)
Editor is loading...
Leave a Comment