?Python之tkinter:動(dòng)態(tài)演示調(diào)用python庫的tkinter帶你進(jìn)入GUI世界(Entry/Entry的Command)
導(dǎo)讀
動(dòng)態(tài)演示調(diào)用python庫的tkinter帶你進(jìn)入GUI世界(Entry/Entry的Command)
tkinter應(yīng)用案例—Entry/Entry的Command
1、tkinter應(yīng)用案例:利用輸入框Entry組件實(shí)現(xiàn)將輸入的書名和作者名輸出到命令框
#tkinter應(yīng)用案例:利用輸入框Entry組件實(shí)現(xiàn)將輸入的書名和作者名輸出到命令框
from tkinter import *
root=Tk()
root.title("Jason niu工作室")
Label(root,text="作品:").grid(row=0,column=0)
Label(root,text="作者:").grid(row=1,column=0)
e1=Entry(root)
e2=Entry(root)
e1.grid(row=0,column=1,padx=10,pady=5)
e2.grid(row=1,column=1,padx=10,pady=5)
def show():
print (u"作品:《%s》" % e1.get())
print (u"作者:%s" % e2.get())
Button(root,text="獲取信息",width=10,command=show) .grid(row=3,column=0,sticky=W,padx=10,pady=5)
Button(root,text="退出",width=10,command=root.quit) .grid(row=3,column=1,sticky=E,padx=10,pady=5)
mainloop()
2、tkinter應(yīng)用案例:利用輸入框Entry組件實(shí)現(xiàn)回答問題,正確才會自動(dòng)切換到下個(gè)Entry框
?
#tkinter應(yīng)用案例:利用輸入框Entry組件實(shí)現(xiàn)回答問題,正確才會自動(dòng)切換到下個(gè)Entry框
from tkinter import *
master = Tk()
master.title("Jason niu工作室")
theLabel=tk.Label(master,text="進(jìn)入GUI世界,請開始你的表演!\n請問我們是什么工作室?\n(輸入正確才能自動(dòng)切換到下一行)")
theLabel.pack()
def test():
if e1.get()=="Jason niu工作室":
print ("正確!")
return True
else:
print ("錯(cuò)誤!")
e1.delete(0,END)
return False
v = StringVar()
e1 = Entry(master,textvariable=v,validate="focusout",validatecommand=test)
e2 = Entry(master)
e1.pack(padx=10,pady=10)
e2.pack(padx=10,pady=10)
mainloop()
3、tkinter應(yīng)用案例:利用輸入框Entry組件實(shí)現(xiàn)回答問題,正確才會自動(dòng)切換到下個(gè)Entry框
#tkinter應(yīng)用案例:利用輸入框Entry組件實(shí)現(xiàn)回答問題,正確才會自動(dòng)切換到下個(gè)Entry框
from tkinter import *
master = Tk()
master.title("Jason niu工作室")
theLabel=tk.Label(master,text="進(jìn)入GUI世界,請開始你的表演!\n請問我們是什么工作室?\n(輸入正確才能自動(dòng)切換到下一行)")
theLabel.pack()
def test():
if e1.get()=="Jason niu工作室":
print ("正確!")
return True
else:
print ("錯(cuò)誤!")
e1.delete(0,END)
return False
v = StringVar()
e1 = Entry(master,textvariable=v,validate="focusout",validatecommand=test)
e2 = Entry(master)
e1.pack(padx=10,pady=10)
e2.pack(padx=10,pady=10)
mainloop()
4、tkinter應(yīng)用案例:利用輸入框Entry組件實(shí)現(xiàn)回答問題,正確觸發(fā)事件A,輸入錯(cuò)誤觸發(fā)事件B
#tkinter應(yīng)用案例:利用輸入框Entry組件實(shí)現(xiàn)回答問題,正確觸發(fā)事件A,輸入錯(cuò)誤觸發(fā)事件B
from tkinter import *
master = Tk()
master.title("Jason niu工作室")
theLabel=tk.Label(master,text="進(jìn)入GUI世界,請開始你的表演!\n請問我們是什么工作室?\n(輸入正確觸發(fā)事件A,輸入錯(cuò)誤觸發(fā)事件B)")
theLabel.pack()
v = StringVar()
def test1():
if v.get()=="Jason niu工作室":
print ("正確!")
return True
else:
print ("錯(cuò)誤!")
e1.delete(0,END)
return False
def test2():
print ("我是事件B,因?yàn)槟慊卮疱e(cuò)誤所以我被執(zhí)行。。。")
return True
e1 = Entry(master,textvariable=v,validate="focusout", validatecommand=test1,invalidcommand=test2)
e2 = Entry(master)
e1.pack(padx=10,pady=10)
e2.pack(padx=10,pady=10)
mainloop()
5、tkinter應(yīng)用案例:利用輸入框Entry組件實(shí)現(xiàn)回答問題,只有輸入錯(cuò)誤打印出三個(gè)參數(shù)
#tkinter應(yīng)用案例:利用輸入框Entry組件實(shí)現(xiàn)回答問題,只有輸入錯(cuò)誤打印出三個(gè)參數(shù)
from tkinter import *
master = Tk()
master.title("Jason niu工作室")
theLabel=tk.Label(master,text="進(jìn)入GUI世界,請開始你的表演!\n請問我們是什么工作室?\n(輸入正確直接顯示,輸入錯(cuò)誤打印出三個(gè)參數(shù))")
theLabel.pack()
v = StringVar()
def test(content,reason,name):
if content=="Jason niu工作室":
print ("正確!")
return True
else:
print ("錯(cuò)誤!")
print(content,reason,name)
return False
testCMD = master.register(test)
e1 = Entry(master,textvariable=v,validate="focusout",validatecommand=(testCMD,"%P","%v","%W"))
e2 = Entry(master)
e1.pack(padx=10,pady=10)
e2.pack(padx=10,pady=10)
mainloop()