python - 在 python 上,如何确定单击了哪个按钮

标签 python button tkinter

我如何运行 if 语句来确定单击了哪个按钮?我一直在四处寻找,但我是 Tkinter 的新手,我不太确定我应该做什么。

    self.button1 = Tkinter.Button(self,text=u"Convert Decimal to Binary", command=self.OnButtonClick)
    self.button1.grid(column=1,row=1)

    self.button2 = Tkinter.Button(self,text=u"Convert Binary to Decimal", command=self.OnButtonClick)
    self.button2.grid(column=1,row=2)

最佳答案

您可以将每个按钮的 command 选项设置为 lambda像这样:

self.button1 = Tkinter.Button(self, ..., command=lambda: self.OnButtonClick(1))
...
self.button2 = Tkinter.Button(self, ..., command=lambda: self.OnButtonClick(2))

然后,让 self.OnButtonClick 接受一个参数,该参数将是按钮的“id”。它会是这样的:

def OnButtonClick(self, button_id):
    if button_id == 1:
        # self.button1 was clicked; do something
    elif button_id == 2:
        # self.button2 was clicked; do something

关于python - 在 python 上,如何确定单击了哪个按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21148471/

相关文章:

python - 在 Python Tkinter 中,如何在主循环窗口打开后运行代码?

python - tkinter 在 MacOS 上始终使窗口保持在顶部

asp.net - 具有不同按钮类型的 Asp 按钮

ios - 无法使用辅助指示器进行 segue

python - 停止页面加载 Python/Selenium/PhantomJS

python - 使用 cron 每分钟执行一个 python 3 脚本时出现问题

不同分辨率缩放布局的Android调整大小按钮

python - 如何在 Python 中更改按钮大小?

python - 如何在Python中记录缩进错误?

python - 使用flask在客户端和服务器之间传递信息