【发布时间】:2013-06-04 11:43:31
【问题描述】:
我是一名 Python 初学者,在 MacOS 上运行。
我正在 tkinter 中制作一个带有文本解析器 GUI 的程序,您在 Entry 小部件中键入命令,然后点击 Button 小部件,这会触发我的 parse() 函数等,打印结果到 Text 小部件,文本冒险风格。
>绕过按钮
我不能让你那样做,戴夫。
我正试图找到一种方法来摆脱每次用户发出命令时将鼠标拖到Button 的需要,但这比我想象的要难。
我猜正确的代码看起来像self.bind('<Return>', self.parse())?但我什至不知道该放在哪里。 root、__init__、parse() 和 create_widgets() 不想要。
需要明确的是,任何人都应该在 prog 中按 enter 的唯一原因是触发 parse(),因此不需要专门支持 Entry 小部件。它在任何地方都可以正常工作。
响应7stud,基本格式:
from tkinter import *
import tkinter.font, random, re
class Application(Frame):
def __init__(self, master):
Frame.__init__(self, master, ...)
self.grid()
self.create_widgets()
self.start()
def parse(self):
...
def create_widgets(self):
...
self.submit = Button(self, text= "Submit Command.", command= self.parse, ...)
self.submit.grid(...)
root = Tk()
root.bind('<Return>', self.parse)
app = Application(root)
root.mainloop()
【问题讨论】:
标签: python python-3.x tkinter key-bindings