# ch5_4.py
from tkinter import *
def printInfo():
print("Account:%s\nPassword: %s" % (accountE.get(),pwdE.get()))
root = Tk()
root.title("ch5_4")
msg="欢迎进入广东石油化工学院成绩查询系统"
sseGif=PhotoImage(file="sse1.gif") #Logo图像文件
logo=Label(root, image=sseGif,text=msg,compound=BOTTOM)
accountL=Label(root,text="Account") # account标签
accountL.grid(row=1)
pwdL=Label(root,text="Password") # pwd标签
pwdL.grid(row=2)
logo.grid(row=0,column=0,columnspan=2,pady=10,padx=10)
accountE=Entry(root) # account文本框
pwdE=Entry(root,show="*") # pwd文本框
accountE.grid(row=1,column=1) # 定位account文本框
pwdE.grid(row=2,column=1,pady=10) # 定位pwd文本框
# 以下建立Login和Quit按钮
loginbtn=Button(root,text="Login",command=printInfo)
loginbtn.grid(row=3,column=0)
quitbtn=Button(root,text="Quit",command=root.quit)
quitbtn.grid(row=3,column=1)
root.mainloop()
这个代码是一个简单的Python GUI程序,使用了tkinter
库来创建一个登录界面。用户可以在界面中输入账号和密码,点击“Login”按钮后,程序会在控制台打印出输入的账号和密码。点击“Quit”按钮则会退出程序。
代码解析:
-
导入库:
from tkinter import *
这行代码导入了
tkinter
库,用于创建图形用户界面(GUI)。 -
定义
printInfo
函数:def printInfo(): print("Account:%s\nPassword: %s" % (accountE.get(),pwdE.get()))
这个函数会在用户点击“Login”按钮时被调用,获取用户在
accountE
和pwdE
文本框中输入的内容,并打印到控制台。 -
创建主窗口:
root = Tk() root.title("ch5_4")
创建了一个名为
root
的主窗口,并设置了窗口的标题为“ch5_4”。 -
添加Logo和欢迎信息:
msg="欢迎进入广东石油化工学院成绩查询系统" sseGif=PhotoImage(file="sse1.gif") #Logo图像文件 logo=Label(root, image=sseGif,text=msg,compound=BOTTOM)
这里创建了一个
Label
控件,用于显示Logo图像和欢迎信息。compound=BOTTOM
表示文本将显示在图像的下方。 -
添加账号和密码标签:
accountL=Label(root,text="Account") # account标签 accountL.grid(row=1) pwdL=Label(root,text="Password") # pwd标签 pwdL.grid(row=2)
创建了两个标签,分别用于显示“Account”和“Password”。
-
添加账号和密码输入框:
accountE=Entry(root) # account文本框 pwdE=Entry(root,show="*") # pwd文本框 accountE.grid(row=1,column=1) # 定位account文本框 pwdE.grid(row=2,column=1,pady=10) # 定位pwd文本框
创建了两个输入框,分别用于输入账号和密码。
show="*"
表示密码输入框中的内容将以*
显示。 -
添加登录和退出按钮:
loginbtn=Button(root,text="Login",command=printInfo) loginbtn.grid(row=3,column=0) quitbtn=Button(root,text="Quit",command=root.quit) quitbtn.grid(row=3,column=1)
创建了两个按钮,一个用于登录,另一个用于退出程序。
command=printInfo
表示点击“Login”按钮时会调用printInfo
函数,command=root.quit
表示点击“Quit”按钮时会退出程序。 -
运行主循环:
root.mainloop()
这行代码启动了
tkinter
的主事件循环,使窗口保持显示状态,直到用户关闭窗口。
运行效果:
-
运行程序后,会弹出一个窗口,窗口顶部显示Logo和欢迎信息。
-
用户可以在“Account”和“Password”文本框中输入账号和密码。
-
点击“Login”按钮后,程序会在控制台打印出输入的账号和密码。
-
点击“Quit”按钮会退出程序。
注意事项:
-
代码中使用了
sse1.gif
作为Logo图像文件,确保该文件存在于程序运行的目录中,否则程序会报错。 -
如果使用的是Python 3.x版本,
tkinter
库已经内置,无需额外安装。