使用tkinter创建登录界面

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
实时计算 Flink 版,5000CU*H 3个月
实时数仓Hologres,5000CU*H 100GB 3个月
简介: 使用tkinter创建登录界面

tkinter简介

tkinter是Python的标准GUI(图形用户界面)库,内置在Python自带的模块中,提供了跨平台的GUI支持。使用tkinter可以方便地构建GUI应用程序,如窗口、按钮、菜单、文字、输入框等界面元素。tkinter的优点有:

  • 跨平台支持,可以运行在Windows、Mac和Linux等系统
  • 语法简单易学,可以方便构建基本GUI
  • 可以方便与Python代码逻辑相结合 缺点有界面不够优美等。但tkinter提供了GUI应用开发的基础,具有很高的实用价值。

tkinter基础组件和布局管理

tkinter通过各种Widget(窗口组件)来构建完整的GUI应用。常用的组件有:

  • Label:标签,可以显示文本
  • Button:按钮,可以触发函数
  • Entry:输入框,用于输入文本
  • Text:文本框,显示多行文本
  • Frame:框架,用于容纳其他组件
  • Canvas:画布,可以在上面绘制图形
  • Menu:菜单 等等。tkinter提供布局管理器如pack、grid、place来管理各个组件的位置和布局。pack是最简单的布局方式,可以使组件自动填充空间。grid使用网格系统进行布局。place可以精确指定组件的坐标。下面是一个简单的登录界面布局代码:
import tkinter as tk
window = tk.Tk()
window.title('登录界面')  
tk.Label(window, text='欢迎登录').pack() 
frm = tk.Frame(window)
frm.pack()
tk.Label(frm, text='用户名:').grid(row=0, column=0)
tk.Entry(frm).grid(row=0, column=1)
tk.Label(frm, text='密码:').grid(row=1, column=0) 
tk.Entry(frm).grid(row=1, column=1)
btn = tk.Button(frm, text='登录')
btn.grid(row=2, column=1)
window.mainloop()

这里通过组合不同的组件和布局方式,构建一个登录界面的基本框架,包含了文字,输入框和按钮。

登录界面加背景图片

tkinter直接生成的登录界面比较单调,可以在登录界面加上背景图,背景图片放在相对路径。

import tkinter as tk
from PIL import Image,ImageTk
window = tk.Tk()
window.title('登录界面')
window.geometry('600x600') 
title_label = tk.Label(window, text='登录界面设置', fg='blue', font=('SimSun', 10))
title_label.pack() 
#图片位置
img = Image.open("bg2.png")  #图片,用相对路径
img = img.resize((600, 600)) # 调整图片大小
tk_img = ImageTk.PhotoImage(img)
label_img = tk.Label(window, image=tk_img)
label_img.place(x=100, y=100) # 置于顶部居中
label_img.pack()
user_label = tk.Label(window, text='用户名:', font=('SimSun', 12))
user_label.place(x=80, y=230)
user_entry = tk.Entry(window)
user_entry.place(x=180, y=230)
pwd_label = tk.Label(window, text='密码:', font=('SimSun', 12)) 
pwd_label.place(x=80, y=270)
pwd_entry = tk.Entry(window, show='*')
pwd_entry.place(x=180, y=270)  
login_button = tk.Button(window, text='登录', font=('SimSun', 12))  
login_button.place(x=300, y=300)
window.mainloop()


目录
相关文章
|
6月前
|
Python
tkinter之菜单按钮
tkinter之菜单按钮
55 1
|
6月前
|
JSON Linux 数据安全/隐私保护
Qt实现菠菜登录界面
Qt实现菠菜登录界面
|
6月前
|
Python
tkinter 主窗口
tkinter 主窗口
44 0
|
6月前
|
Python 容器
Tkinter:窗口控件配置
Tkinter:窗口控件配置
|
26天前
|
Python
Tkinter学习笔记(一):完成文件选择和保存对话框
关于如何使用Python的Tkinter库来创建文件选择和保存对话框的教程。
32 2
|
C++ Python
Python密码锁屏窗体界面
Python密码锁屏窗体界面
126 0
Python密码锁屏窗体界面
|
Python
Python 初探tkinter下拉和弹出Menu以及选项OptionMenu
Python 初探tkinter下拉和弹出Menu以及选项OptionMenu
158 0
【Pyqt5】实现登录界面、主界面的相互跳转
【Pyqt5】实现登录界面、主界面的相互跳转
|
关系型数据库 MySQL 数据库
Qt实现登陆界面(含代码)
Qt实现登陆界面(含代码)
570 0
Qt实现登陆界面(含代码)