文本编辑器 - 使粗体按钮凹陷

text editor - make bold button sunken

我正在为文本编辑器开发一个粗体按钮。我在选择粗体文本时设置按钮 "sunken" 时遇到问题。

我想它会像下面这样?

self.textPad.tag_bind("bt","<Button-1>",self.boldP())

def boldP(self):
        self.boldB.config(relief="sunken")

不确定我的想法是否正确,有人可以帮我解释一下吗?

我不确定这是主要问题,但您发布的代码片段的一个问题是您实际上并没有给 tag_bind 回调,而是给它 None .为什么?因为你调用的是 boldP,returns None。更改此行:

self.textPad.tag_bind("bt","<Button-1>",self.boldP())

收件人:

self.textPad.tag_bind("bt", "<Button-1>", self.boldP)

另一个问题是您的回调应该采用事件参数:

def boldP(self, event):
    ...

我不太熟悉 Tkinter,所以我不太确定 tag_bind 应该如何工作 - 但它似乎主要用于 canvas 对象。这是你在做什么?否则尝试 bind。像这样:

self.button.bind(,"<Button-1>", self.boldP)