首頁 > 軟體

Python+tkinter製作經典登入介面和點選事件

2022-09-04 18:02:53

前言

Tkinter(即 tk interface) 是 Python 標準 GUI 庫,簡稱 “Tk”;從本質上來說,它是對 TCL/TK 工具包的一種 Python 介面封裝。
Tkinter 是 Python 自帶的標準庫,因此無須另行安裝,它支援跨平臺執行,不僅可以在 Windows 平臺上執行,還支援在 Linux 和 Mac 平臺上執行。

Tkinter 編寫的程式,也稱為 GUI 程式,GUI (Graphical User Interface)指的是“圖形化使用者介面”,它是計算機圖學(CG)的一門分支,主要研究如何在計算機中表示圖形,以及利用計算機進行圖形的計算、處理和顯示等相關工作。

GUI 這一概念並非 Python 語言獨有,它屬於電腦科學技術領域中的一個概念,比如使用 C/C++ 語言開發的 Qt、GTK、Electron 等都屬於 GUI 軟體包

環境使用

Python 3.8

Pycharm

模組使用

tkinter

PIL

程式碼部分

匯入模組

import tkinter as tk
import tkinter.messagebox
from PIL import Image, ImageTk

先做一個大小合適的視窗

root = tk.Tk()
root.title('軟體登陸介面')
root.geometry('369x200+500+500')

root.mainloop()

賬號密碼輸入框

# 使用者登陸
tk.Label(root, text='使用者登陸', font=('微軟雅黑', 20)).grid(row=0, column=0, columnspan=10)
# 登陸賬號
tk.Label(root, text='登陸賬號:', font=('微軟雅黑', 15)).grid(row=1, column=0, padx=10)
# 賬號輸入框
account_va = tk.StringVar()
tk.Entry(root, textvariable=account_va).grid(row=1, column=1, padx=5)

# 登陸密碼
tk.Label(root, text='登陸密碼:', font=('微軟雅黑', 15)).grid(row=2, column=0, padx=10)
# 密碼輸入框
password_va = tk.StringVar()
tk.Entry(root, textvariable=password_va, show='*').grid(row=2, column=1, padx=5)

點選按鈕

# 登陸賬號
tk.Label(root, text='登陸賬號:', font=('微軟雅黑', 15)).grid(row=1, column=0, padx=10)
# 註冊賬號
tk.Button(root, text='忘記密碼',font=('微軟雅黑'), relief="flat").grid(row=2, column=2, padx=10)
# 登陸按鈕
tk.Button(root, text='登陸', font=('微軟雅黑'), bg='red', fg='white', width=10, relief="flat").grid(row=3, column=0, columnspan=10)
tk.Label(root, text='公共使用者名稱:admin 登陸密碼:123456', fg='gray').grid(row=4, column=0, columnspan=10, pady=15)

點選事件繫結

登入

def Land():
    if account_va.get() == 'admin' and password_va.get() == '123456':
        tkinter.messagebox.showinfo(title='溫馨提示', message='哈哈哈哈哈, 騙你的, 怎麼會把密碼告訴你呢')
        tkinter.messagebox.showinfo(title='溫馨提示', message='你可以點選註冊會員試試')

    else:
        tkinter.messagebox.showerror(title='警告', message='你的賬號密碼有問題, 也可以點選註冊會員')

忘記密碼

def ForgetPassword():
    tkinter.messagebox.showerror(title='錯誤', message='你根本就沒有密碼, 你心裡沒數?')

註冊

def RegisterAnAccount():
    top = tk.Toplevel()
    top.title("掃碼新增")
    top.geometry('640x750+500+500')
    #  匯入圖片
    image = Image.open('img.png')
    tk_image = ImageTk.PhotoImage(image)
    #  在標籤裡放入圖片
    tk.Label(top, image=tk_image).pack()
    top.mainloop()

最後效果

到此這篇關於Python+tkinter製作經典登入介面和點選事件的文章就介紹到這了,更多相關Python tkinter登入介面內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com