像许多其他程序一样,如何在同一窗口中打开Tkinter按钮

时间:2019-03-17 14:11:12

标签: python-3.x button tkinter

我有一个程序计算器,按钮代码会打开一个新窗口,但是我希望按钮计算器在同一窗口中运行,而不是两个不同的窗口,我如何在同一窗口中运行代码? 附言该代码不是我的,仅作为示例

from tkinter import *

root = Tk()
root.title("Math Lab")
root.geometry("1400x1000")
heading = Label(root, text = "Welcome to the MATH Lab", font=("Berlin Sans FB", 40, "bold"), fg= "steelblue").pack()
root.configure(background= "powder blue")


def calculator():
    w = Tk()
    w.geometry("1400x1000")

    def evaluate1():
        res.configure(text="Answer: " + str(eval(entry.get())))

    def evaluate(event):
        res.configure(text="Answer: " + str(eval(entry.get())))

    but1 = Button(w, text="Enter", width=10, height=3)
    but1.place(x=650, y=100)
    but1.config(command=evaluate1)

    Label(w, text="Your Expression:").pack()
    entry = Entry(w)
    entry.bind("<Return>", evaluate)
    entry.pack()
    res = Label(w)
    res.pack()
    w.mainloop()

but1=Button(root,text="Calculator",width = 10, height = 3)
but1.place(x=100, y=100)
but1.config(command = calculator)


root.mainloop()

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

您在这里请求一个新窗口:

    w = Tk()

替换为

    w = root

,您一切顺利。 (嗯,为了美观起见,您需要整理一些x,y偏移量。)