1. 程式人生 > >【python tkinter】登陸介面

【python tkinter】登陸介面

密碼輸入錯誤會彈出messagebox,輸入正確後可調轉到MainPage(下一節編寫)

from tkinter import *
from tkinter.messagebox import *

class LoginPage(Frame):
    def __init__(self):
        super().__init__()
        self.username = StringVar()
        self.password = StringVar()
        self.pack()
        self.createForm()

    def createForm(self):
        Label(self).grid(row=0, stick=W, pady=10)
        Label(self, text = '賬戶: ').grid(row=1, stick=W, pady=10)
        Entry(self, textvariable=self.username).grid(row=1, column=1, stick=E)
        Label(self, text = '密碼: ').grid(row=2, stick=W, pady=10)
        Entry(self, textvariable=self.password, show='*').grid(row=2, column=1, stick=E)
        Button(self, text='登陸', command=self.loginCheck).grid(row=3, stick=W, pady=10)
        Button(self, text='退出', command=self.quit).grid(row=3, column=1, stick=E)

    def loginCheck(self):
        name = self.username.get()
        secret = self.password.get()
        if name=='wangliang' and secret=='123456':
            self.destroy()
            # MainPage()
        else:
            showinfo(title='錯誤', message='賬號或密碼錯誤!')
            # print('賬號或密碼錯誤!')
        
root = Tk()
root.title('小程式')
width = 280
height = 200
screenwidth = root.winfo_screenwidth()  
screenheight = root.winfo_screenheight() 
alignstr = '%dx%d+%d+%d' % (width, height, (screenwidth-width)/2, (screenheight-height)/2)
root.geometry(alignstr)    # 居中對齊

page1 = LoginPage()
root.mainloop()
效果: