【tkfluent】tkinter现代化组件库 · 点击事件(额外内容)

请添加图片描述

点击事件

tkinter中有<Button-1>事件,但这个事件只是在鼠标按下时触发,直接使用这个不属于点击。点击应为鼠标放上按钮>按下鼠标>放开鼠标>依然在按钮上>

编程

我们需要先绑定这些事件。

        self.bind("<Enter>", self._event_enter, add="+")
        self.bind("<Leave>", self._event_leave, add="+")
        self.bind("<Button-1>", self._event_on_button1, add="+")
        self.bind("<ButtonRelease-1>", self._event_off_button1, add="+")

这里点击需要两个参数,一个是是否鼠标还在按钮上,一个是鼠标是否按下。在最后鼠标放开触发事件,如果鼠标还在按钮上,将触发事件<<Clicked>>

    def _event_enter(self, event=None):
        self.enter = True
        
    def _event_leave(self, event=None):
        self.enter = False

    def _event_on_button1(self, event=None):
        self.button1 = True

    def _event_off_button1(self, event=None):
        self.button1 = False

        if self.enter:
            #self.focus_set()
            self.event_generate("<<Clicked>>")

之后如果需要用到点击事件,直接使用bind就可以了

self.bind("<<Clicked>>", lambda event=None: print("这里改为其他方法"))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值