为什么我的 GUI 程序在 2 个不同的窗口中?

问题描述 投票:0回答:1

我用 python 中的 tkinter 制作的 GUI 程序位于 2 个不同的窗口中

window = Tk()
window.title("Password Manager")
window.config(padx=50, pady=50)

canvas = Canvas(height=200, width=200)
logo_img = PhotoImage(file="logo.png")
canvas.create_image(100, 100, image=logo_img)
canvas.grid(row=0, column=1)

website_label = Label(text="Website: ")
website_label.grid(row=1, column=0)
email_label = Label(text="Email/Username: ")
email_label.grid(row=2, column=0)
password_label = Label(text="Password: ")
password_label.grid(row=3, column=0)
window.mainloop()

website_entry = Entry(width=35)
website_entry.grid(row=1, column=1, columnspan=2)
website_entry.focus()
email_entry = Entry(width=35)
email_entry.grid(row=2, column=1, columnspan=2)
email_entry.insert(0, "[email protected]")
password_entry = Entry(width=21)
password_entry.grid(row=3, column=1)

generate_password_button = Button(text="Generate Password")
generate_password_button.grid(row=3, column=2)
add_button = Button(text="Add", width=36, command=save)
add_button.grid(row=4, column=1, columnspan=2)

我试图让它出现在一个窗口中,但它出现在两个窗口中。 第二个窗口也花了一段时间才出现

python tkinter
1个回答
0
投票

我试图让它出现在一个窗口中,但它出现在两个窗口中 视窗。第二个窗口也花了一段时间才出现

问题可以解决。

正如@acw1668 的评论。关于

window.mainloop()

每个小部件的

window
都丢失了。

片段:

from tkinter import *
window = Tk()
window.title("Password Manager")
window.config(padx=50, pady=50)

canvas = Canvas(window, height=200, width=200)
logo_img = PhotoImage(file="p2.png")
canvas.create_image(100, 100, image=logo_img)
canvas.grid(row=0, column=1)

website_label = Label(window, text="Website: ")
website_label.grid(row=1, column=0)
email_label = Label(window,text="Email/Username: ")
email_label.grid(row=2, column=0)
password_label = Label(window,text="Password: ")
password_label.grid(row=3, column=0)
 

website_entry = Entry(window, width=35)
website_entry.grid(row=1, column=1, columnspan=2)
website_entry.focus()
email_entry = Entry(window, width=35)
email_entry.grid(row=2, column=1, columnspan=2)
email_entry.insert(0, "[email protected]")
password_entry = Entry(window, width=21)
password_entry.grid(row=3, column=1)

generate_password_button = Button(window, text="Generate Password")
generate_password_button.grid(row=3, column=2)
add_button = Button(window, text="Add", width=36, command=save)
add_button.grid(row=4, column=1, columnspan=2)

window.mainloop()

截图:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.