Tkinter Entry Box 2接收输入框1的字符,而我在输入框1中键入

时间:2014-08-28 21:11:14

标签: python tkinter

当我输入entrybox1时,它会自动出现在entrybox2中。就像任何发生的事情一样,entrybox1发生在entrybox2。

以下是我的代码

from Tkinter import*
import random

class Love:
    def __init__(self):
        window = Tk()
        window.title("Love Calculator")
        window.geometry("300x180")

        frame1 = Frame(window)
        frame1.pack()
        self.lbl = Label(frame1, text = "Love is Pure",fg="white",bg = "blue")
        self.lbl2=Label(frame1, text ="are you meant for one another",fg="White",bg = "red")
        self.lbl3=Label(frame1,text="Let FIND OUT!!",fg="white",bg = "green")
        self.lbl.pack()
        self.lbl2.pack()
        self.lbl3.pack()




        frame2=Frame(window)
        frame2.pack()
        label = Label(frame2,text = "Your Name")
        label2 = Label(frame2, text= "Your Lovers name")

        self.msg = StringVar
        entry1 = Entry(frame2, textvariable =self.msg)

        self.out = StringVar
        entry2 = Entry(frame2, textvariable =self.out)

        btCalculate=Button(frame2, text="Calculate", command=self.processButton)

        label.grid(row=1,column=1)
        label2.grid(row=2,column=1)
        entry1.grid(row=1,column=2)
        entry2.grid(row=2,column=2)
        btCalculate.grid(row=4,column=3,sticky=E)

1 个答案:

答案 0 :(得分:2)

两个Entry小部件都有效地使用相同的textvariable。这是因为您使用StringVar错误。你没有创建新的StringVar,你只是引用了这个类。

简而言之,您需要这样做:

self.msg = StringVar()

......而不是这个:

self.msg = StringVar

请注意使用()