【问题标题】:Binding button to label widget将按钮绑定到标签小部件
【发布时间】:2021-05-20 18:42:09
【问题描述】:

尝试在 python tkinter 中调用 hii 函数,但没有任何反应。

我的代码:-

def hii():
    print("hii")


m_root = Tk()
m_frame = Frame(m_root)
m_display = Label(m_frame)

label = Label(m_root,text="hii") #set your text
label.bind("<Enter>",hii)
label.pack()

m_display.pack()
m_frame.pack()
m_display.update()

m_root.mainloop()

【问题讨论】:

  • 你确定什么都没有发生吗?当您的鼠标悬停在标签上时,您应该会收到错误消息。
  • @Matiiss 不要将"&lt;Enter&gt;""&lt;Return&gt;" 混淆。 BryanOakley 说应该提出错误是正确的
  • 哦,是的@BryanOakley,当我将鼠标移动到文本时,我在控制台上有消息:Traceback (most recent call last): File "C:\Python\lib\tkinter\__init__.py", line 1699, in __call__ return self.func(*args) TypeError: hi() takes 0 positional arguments but 1 was given
  • @Deoj 您是否希望在您按下键盘上的回车键或鼠标光标Enters 小部件时触发该事件?
  • @Deoj 那是因为.bind() 传递了另一个参数event 所以应该像这样处理它:.bind("Event", lambda e: func())def func(event):

标签: python python-3.x tkinter tkinter-button tkinter-label


【解决方案1】:

第一行应该是:def hii(event):,它工作正常。 该函数应该期待一个事件作为参数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-15
    • 1970-01-01
    • 1970-01-01
    • 2014-09-16
    相关资源
    最近更新 更多