我是一名 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()