簡體   English   中英

Tkinter綁定進入/返回的問題

[英]Problems with Tkinter Binding to enter/return

我的程序:

#!/usr/bin/python
from Tkinter import *
class App:
    def __init__(self,master):
        frame = Frame(master,width = 100,height = 100)
        frame.bind('<Return>',self.ret)
        frame.pack()

    def ret(self):
        print "You pressed enter"

root = Tk()
app = App(root)
root.mainloop()  

它打開了窗口,但是當我按回車鍵或輸入鍵時它什么也沒做。

這是因為您必須將焦點放在框架上以響應事件:

frame = Frame(master,width = 100,height = 100)
frame.focus_set()

順便說一句,回調將Tkinter事件作為參數接收,因此ret應該定義為def ret(self, event) ,或使用lambda函數將事件綁定,並且不要使用參數:

frame.bind('<Return>', lambda e: self.ret())

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM