天天看點

Python學習之tkinter--登入系統界面篇代碼效果:文法介紹:代碼:

Python學習之tkinter–登入系統界面篇

最近開始整理python的資料,部落客建立了一個qq群,希望給大家提供一個交流的平台 938587844 。

今天我們學習一下python的tkinter。tkinker在python2.5以後就是自帶包了,是以我們不需要另外安裝。tkinker相對與其他python GUI程式設計的包而言,是相對容易入手的。

代碼效果:

Python學習之tkinter--登入系統界面篇代碼效果:文法介紹:代碼:

文法介紹:

基本文法:

建立一個視窗對象root,root前面的self.是面向對象裡面的内容,不明白的同學可以去百度一下,或者去看圓方圓社群的入門指南。

self.root.title("測試系統")
self.root.geometry('700x400')
           

給視窗root設定标題,并設定視窗大小。

self.canvas = tkinter.Canvas(self.root, height=400, width=700)#建立畫布
self.image_file = tkinter.PhotoImage(file="test.gif")#加載圖檔檔案
self.image = self.canvas.create_image(0,0, anchor='nw', image=self.image_file)#将圖檔置于畫布上
self.canvas.pack(side='top')#放置畫布(為上端)
           

如果我們需要讓自己的界面更加好看,可以建立一個畫布,也就是上面效果圖中的美女圖像。

#建立一個`label`名為`賬戶: `
self.label_account = tkinter.Label(self.root, text='賬戶: ')
#建立一個`label`名為`密碼: `
self.label_password = tkinter.Label(self.root, text='密碼: ')
           

這裡建立的是一個label,label是什麼不明白可以參考上面貼圖的“賬戶”與“密碼”。

  • Label(A, B):參數A代表Lable依賴視窗,參數B即使用者可見的Lable的名字了(text=“LableName”)
  • Button(A, B, text=’’, [width=’’, height=’’]):參數A是按鈕依賴的視窗主體,參數B是按鈕的相應事件(command = self.siginUp_interface)這裡的響應事件的進行注冊/登入進入背景,command後接響應函數。
  • Entry(A):輸入框,參照前面的.Label(),有疑問的可以在下方留言
  • place(x="", y=""):這個是設定視窗部件的函數
最近開始整理python的資料,部落客建立了一個qq群,希望給大家提供一個交流的平台 938587844 。

代碼:

#這是系統的登入界面
import tkinter
from tkinter import messagebox

class Login(object):
	def __init__(self):
		# 建立主視窗,用于容納其它元件
		self.root = tkinter.Tk()
		# 給主視窗設定标題内容
		self.root.title("測試系統")
		self.root.geometry('700x400')
		#運作代碼時記得添加一個gif圖檔檔案,不然是會出錯的
		self.canvas = tkinter.Canvas(self.root, height=400, width=700)#建立畫布
		self.image_file = tkinter.PhotoImage(file="test.gif")#加載圖檔檔案
		self.image = self.canvas.create_image(0,0, anchor='nw', image=self.image_file)#将圖檔置于畫布上
		self.canvas.pack(side='top')#放置畫布(為上端)

		#建立一個`label`名為`賬戶: `
		self.label_account = tkinter.Label(self.root, text='賬戶: ')
		#建立一個`label`名為`密碼: `
		self.label_password = tkinter.Label(self.root, text='密碼: ')
		
		# 建立一個賬号輸入框,并設定尺寸
		self.input_account = tkinter.Entry(self.root, width=30)
		# 建立一個密碼輸入框,并設定尺寸
		self.input_password = tkinter.Entry(self.root, show='*',width=30)

		# 建立一個登入系統的按鈕
		self.login_button = tkinter.Button(self.root, command = self.backstage_interface, text = "登入", width=10)
		# 建立一個注冊系統的按鈕
		self.siginUp_button = tkinter.Button(self.root, command = self.siginUp_interface, text = "注冊", width=10)

	# 完成布局
	def gui_arrang(self):
		self.label_account.place(x=60, y= 50)
		self.label_password.place(x=60, y= 75)
		self.input_account.place(x=110, y=50)
		self.input_password.place(x=110, y=75)
		self.login_button.place(x=125, y=100)
		self.siginUp_button.place(x=220, y=100)

	# 進入注冊界面
	def siginUp_interface(self):
		# self.root.destroy()
		tkinter.messagebox.showinfo(title='測試系統', message='進入注冊界面')
		#這裡沒有寫具體邏輯,這裡一般應用是連結一個資料庫,插入使用者資訊,留做發散思維
		
	# 進行登入資訊驗證
	def backstage_interface(self):
		account = self.input_account.get().ljust(10," ")
		password = self.input_password.get().ljust(10," ")
		#擷取錄入的賬号以及密碼
		tkinter.messagebox.showinfo(title='測試系統', message='錄入賬戶:{}\n密碼:{}\n登入成功!'.format(account,password))
		#這裡沒有寫驗證邏輯,讀者可以發散思維,自己增加驗證邏輯,例如自己設定一個固定的密碼,然後判斷;也可以讀取資料庫内容,做出各種判斷


def main():
	# 初始化對象
	L = Login()
	# 進行布局
	L.gui_arrang()
	# 主程式執行
	tkinter.mainloop()


if __name__ == '__main__':
	main()

           

【搜尋圓方圓,獲得“python教程”,“python下載下傳”,“python入門”類相關資訊。】

繼續閱讀