-1

ユーザーが自分の詳細を 1 つのウィンドウに入力すると、新しいウィンドウに出力が表示されるようなプログラムを作成しています。しかし、何らかの理由で、2 番目のウィンドウのラベルが印刷されていません。

from tkinter import *

window = Tk()    
window.title("Login")
window.geometry("500x500")
window.resizable(0,0)
l = Label(window, text="Name: ", font="Roman 20 bold",padx=10,pady=10)
l.grid(row=0,column=0)
l = Label(window, text="Password: ", font="Roman 20 bold",padx=10,pady=10)
l.grid(row=1,column=0)
e1 = Entry(window, font="Roman 20 bold")
e1.grid(row=0,column=1)
e2 = Entry(window, font="Roman 20 bold",show="*")
e2.grid(row=1,column=1)

def test():
    a= e1.get()
    b= e2.get()
    mess = Tk()
    mess.title("Output")
    mess.geometry("500x500")
    mess.resizable(0,0)

m= StringVar()
m.set("Name: "+a)
l = Label(mess, textvariable=m, font="Roman 20 bold",padx=10,pady=10)
l.grid()

n= StringVar()
n.set("Password: "+b)
l = Label(mess, textvariable=n, font="Roman 20 bold",padx=10,pady=10)
l.grid(row=1,column=0)
mess.mainloop()

b = Button(window,text="Click",font="Roman 15 bold",width=15,command= test)
b.grid(row=2,column=0)

window.mainloop()

Pythonシェル画面で取得した値を出力できるので、get()メソッドの問題ではないと思います。だから、私は間違っているかもしれませんが、それは label() の問題かもしれないと思います。

4

1 に答える 1