文本框单词

ads

文本框(Entry)是指单行的文本框,用于输入的最基本的widget。

#1 基本用法

设计一个简单的GUI界面,包含姓名和地址两个输入框,且不包含任何动作。

from tkinter import Tk, Label, Entry

root = Tk()
root.title("Yarving")

Label(root, text="姓名").grid(row=0)
Label(root, text="地址").grid(row=1)

Entry(root).grid(row=0, column=1)
Entry(root).grid(row=1, column=1)

root.mainloop()

图:Entry Basic

#2 隐藏输入字符

在用于控制密码时,需要隐藏输入字符。这时候需要使用show参数。

下面的程序将输入的密码隐藏,并用*字符显示。

from tkinter import Tk, Label, Entry

root = Tk()
root.title("Yarving")

Label(root, text="用户").grid(row=0)
Label(root, text="密码").grid(row=1)

Entry(root).grid(row=0, column=1)
Entry(root, show="*").grid(row=1, column=1)

root.mainloop()

图:Entry with Password

#3 获取Entry的字符串内容

有了文本框,自然需要获得文本框里的内容,这里需要使用Entryget()方法。

下面的代码是基于#2代码的改动,在点击登录时,打印用户和密码。

from tkinter import Tk, Label, Entry, Button


root = Tk()
root.title("Yarving")

Label(root, text="用户").grid(row=0)
Label(root, text="密码").grid(row=1)

account_entry = Entry(root)
account_entry.grid(row=0, column=1)
password_entry = Entry(root, show="*")
password_entry.grid(row=1, column=1)


def print_info():
    print("用户:", account_entry.get())
    print("密码:", password_entry.get())


login_button = Button(root, text="登录", command=print_info)
login_button.grid(row=2, column=0)
root.mainloop()

图:Entry get()

当点击了登录按钮时,会在console里输出文本框里的内容:

用户:Yarving
密码:ThisIsDemo
#4 在文本框填入默认内容

有时候需要添加一些默认内容,如html表单有placeholder参数。tkinter通过insert方法为Entry添加默认内容。

下面的代码在用户名输入框里添加”请输入用户名“字符串

from tkinter import Tk, Label, Entry, Button


root = Tk()
root.title("Yarving")

Label(root, text="用户").grid(row=0)
Label(root, text="密码").grid(row=1)

account_entry = Entry(root)
account_entry.insert(0"请输入用户名")
account_entry.grid(row=0, column=1)
password_entry = Entry(root, show="*")
password_entry.grid(row=1, column=1)


def print_info():
    print("用户:", account_entry.get())
    print("密码:", password_entry.get())


login_button = Button(root, text="登录", command=print_info)
login_button.grid(row=2, column=0)
root.mainloop()

图:Entry with insert


最后编辑于:2024/2/23 拔丝英语网

admin-avatar

英语作文代写、国外视频下载

高质量学习资料分享

admin@buzzrecipe.com