在Tkinter Python中删除

卢卡斯

我正在尝试使用Python在Tkinter中创建一个登录系统。因此,我要这样做的方法是要求用户输入用户名。当他们单击下一步时,用户名字段应消失,而应显示一个名为password的新字段。因此,当我尝试执行此操作时,我得到一个错误:

e1 is not defined in line 27, in button

我知道该变量尚未声明,但它应该完成声明,因为我已将所有内容放入main()函数中。
这是我的代码

from tkinter import *
from tkinter import messagebox

root = Tk()
root.title("Loginsystem")
root.geometry("300x200")

def main():
    def username_page():
        Label(root, text="Username").place(x=10, y=10)
        e1 = Entry(root)
        e1.place(x=140, y=10)
        uname = e1.get()

    def password_page():
        Label(root, text="Password").place(x=10, y=40)
        e2 = Entry(root)
        e2.place(x=140, y=40)
        e2.config(show="*")

    def button():
        #Hide the username input field
        e1.delete()
        #Show the password input field
        password_page()


    username_page()

    Button(root, text="Next", command=button, height = 3, width = 35, background = "blue", foreground = "white").place(x=10, y=100)

    root.mainloop()


main()
萨马什·古普塔(Samaksh Gupta)

有一种非常简单的方法,无需在此四处e1移动行,即声明为Global

另外,隐藏并不意味着删除,用于e1.place_forget()隐藏小部件

这是有效的代码:

from tkinter import *

root = Tk()
root.title("Loginsystem")
root.geometry("300x200")

def username_page():
    global e1, myLabel
    myLabel = Label(root, text="Username")
    myLabel.place(x=10, y=10)
    e1 = Entry(root)
    e1.place(x=140, y=10)
    uname = e1.get()

def password_page():
    Label(root, text="Password").place(x=10, y=40)
    e2 = Entry(root)
    e2.place(x=140, y=40)
    e2.config(show="*")


def button():
    # Hide the username input field
    e1.place_forget()
    myLabel.place_forget()
    # Show the password input field
    password_page()

def main():
    username_page()
    Button(root, text="Next", command=button, height = 3, width = 35, background = "blue", foreground = "white").place(x=10, y=100)
    root.mainloop()

main()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python Tkinter从标签中删除/删除图像

来自分类Dev

Python Tkinter删除函数中的条目

来自分类Dev

在Python中的Tkinter中动态删除小部件

来自分类Dev

Python Tkinter删除元组标记

来自分类Dev

在python中隐藏或删除tkinter的菜单栏

来自分类Dev

如何删除python tkinter treevieww中的所有行?

来自分类Dev

Python:tkinter从类中删除对象并使其不可见

来自分类Dev

如何在Tkinter Python应用程序中删除视频?

来自分类Dev

在python tkinter中恢复画布上已删除的图片

来自分类Dev

如何使用TreeView Tkinter Python将表从列表中删除

来自分类Dev

如何删除python tkinter treevieww中的所有行?

来自分类Dev

在 Python/Tkinter 中删除按钮几秒钟?

来自分类Dev

Python中的Tkinter枚举

来自分类Dev

Python,Tkinter中的Getters

来自分类Dev

Python and Tkinter

来自分类Dev

Python Tkinter:删除窗口边框

来自分类Dev

RE:TKinter表行删除(PYTHON)

来自分类Dev

Python Tkinter:删除窗口边框

来自分类Dev

python 3.6,GUI,tkinter,删除行的按钮

来自分类Dev

在tkinter中从网格删除小部件

来自分类Dev

在Tkinter中删除椭圆形的轮廓?

来自分类Dev

删除Tkinter画布中的特定元素

来自分类Dev

删除Tkinter中的画布生成的图形

来自分类Dev

禁止用户删除Tkinter scrolledtext中的文本

来自分类Dev

使用destroy()从Tkinter中的网格删除Entrybox

来自分类Dev

在Tkinter中删除椭圆形的轮廓?

来自分类Dev

Tkinter 从 Frame 中删除/覆盖元素

来自分类Dev

在Tkinter中绘制圆(Python)

来自分类Dev

Tkinter Python中的文本动画?