登录框用户界面
1. Entry 输入框
-
Tkinter中的Entry组件是一个单行文本输入框,用于接收用户在GUI应用程序中输入的信息。它可以被设置为只读或可编辑状态,可以设置输入的文本格式及长度限制等。当用户输入完成后,可以通过调用Entry组件的get()方法获取用户输入的内容。
import tkinter as tk # 导入使用的工具包root = tk.Tk()# 创建根窗口#Label标签主要是,分别用于显示“用户名”和“密码”,并将其放置在根窗口 tk.Label(root, text="用户名:").grid(row=0) tk.Label(root, text="密码:").grid(row=1)#创建两个输入框 Entry,分别用于输入用户名和密码,并将它们放置在根窗口上 e1 = tk.Entry(root) e2 = tk.Entry(root)# 1.1 将输入框 e1 和 e2 放置在根窗口上(第 0 行第 1 列和第 1 行第 1 列),并设置它们的 padding e1.grid(row=0, column=1, padx=10, pady=5) e2.grid(row=1, column=1, padx=10, pady=5)#循环运行窗口 tk.mainloop()
2. 设置输入框加密
-
相当于输入密码的时候 , 不显示密码.
#Label标签主要是,分别用于显示“用户名”和“密码”,并将其放置在根窗口 tk.Label(root, text="用户名:").grid(row=0) tk.Label(root, text="密码:").grid(row=1)#创建两个输入框 Entry,分别用于输入用户名和密码,并将它们放置在根窗口上 e1 = tk.Entry(root) e2 = tk.Entry(root,show="*")
3. 使用Button按钮
-
Tkinter中的Button组件是一个按键, 用于接收用户在GUI应用程序中的鼠标点击操作。
-
它可以显示文本、图片或同时显示文本和图片,也可以被设置为不同的状态
- 当用户单击按钮时,可以通过调用Button组件的command参数 指定的函数来处理相应的事件。
def callback():print("我被调用了")res.config(text='登录成功')#确认按钮的设计 column相当于列 #使用一个新的组件 Button 按钮 columnspan居中 #添加一个触发的事件 当点击确定时候 ,就会调用方法command =callback btn = tk.Button(root, text="确认", command=callback).grid(columnspan=2)res = tk.Label(root, text="") res.grid(row=5, column=1, columnspan=1)
- 当用户单击按钮时,可以通过调用Button组件的command参数 指定的函数来处理相应的事件。
4. 获取Entry中的输入
-
使用的方法是
get()方法
def callback():#6如何获取用户名和密码 Entry.get() e1.get()#分支结构进行处理if e1.get()=="王一博" and e2.get()=="123":print(e1.get(),e2.get())#用户名和密码打印到控制台else:print(e1.get(), e2.get()) # 3. 确认按钮的设计 column相当于列 # 使用一个新的组件 Button 按钮 columnspan居中 # 添加一个触发的事件 当点击确定时候 ,就会调用方法command =callback tk.Button(root, text="确定",command=callback).grid(columnspan=2)
5. messagebox 使用
- 消息提示框的使用.注意使用时需要导入包
from tkinter import messagebox
def callback():#6如何获取用户名和密码 Entry.get() e1.get()#分支结构进行处理if e1.get()=="王一博" and e2.get()=="123":tk.messagebox.showinfo("title弹窗","登录成功")else:tk.messagebox.showinfo("title弹窗", "登录失败")
6. 完整代码
- 完整代码
# 导入包 import tkinter as tk #导入弹窗的包导入 from tkinter import messagebox # 返回一个根目录窗口 root = tk.Tk()# 1. 设计登录框的布局,主要是将文字和图片 # 显示在我们的布局窗口上 # gird 是布局的意思.row 指的是行数. # windows 复制和黏贴 ctrl+c ctrl+v tk.Label(root, text="用户名: ").grid(row=0) tk.Label(root, text="密码: ").grid(row=1)# 2.输入框的设计 # 2.1 加密的参数 show="符号" e1 = tk.Entry(root) e2 = tk.Entry(root, show="*") # 提问:加密符号使用#号可以么?# 2.1 设计Entry的布局,注意行的row e1.grid(row=0, column=1, padx=10, pady=5) e2.grid(row=1, column=1, padx=10, pady=5)# 4.方法 def callback():#6如何获取用户名和密码 Entry.get() e1.get()#分支结构进行处理if e1.get()=="袁子涵" and e2.get()=="123":#print("我被调用了...")print(e1.get(),e2.get())#用户名和密码打印到控制台#输出到gui的界面上,res.config(text="登录成功")#7 信息盒子弹窗 messagebox()tk.messagebox.showinfo("吴琼小弹窗","登录成功")else:print(e1.get(), e2.get())res.config(text="登录失败")tk.messagebox.showinfo("吴琼小弹窗", "登录失败")# 3. 确认按钮的设计 column相当于列 # 使用一个新的组件 Button 按钮 columnspan居中 # 添加一个触发的事件 当点击确定时候 ,就会调用方法command =callback tk.Button(root, text="确定", command=callback).grid(columnspan=2)# 5. 将输出的结果显示到我们的root上 res = tk.Label(root, text="") # text="" 随机获取 #布局显示位置 res.grid(row=5,column=1,columnspan=1) # 展示窗口 root.mainloop()
7. 扩展设计
-
根据图设计下面代码自己完成
def callback():if e1.get() == '' and e2.get() == '':tk.messagebox.showinfo('提示','请输入真实信息,否则测试无效!')else:tk.messagebox.showinfo('提示','警方已经获取到你的信息和位置,投案自首将是你唯一的出路!')
本文链接:https://my.lmcjl.com/post/1104.html
展开阅读全文
4 评论