Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(Entry/Entry的Command)

Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(Entry/Entry的Command)

导读
动态演示调用python库的tkinter带你进入GUI世界(Entry/Entry的Command)


tkinter应用案例—Entry/Entry的Command

1、tkinter应用案例:利用输入框Entry组件实现将输入的书名和作者名输出到命令框

#tkinter应用案例:利用输入框Entry组件实现将输入的书名和作者名输出到命令框

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应用案例:利用输入框Entry组件实现回答问题,正确才会自动切换到下个Entry框

#tkinter应用案例:利用输入框Entry组件实现回答问题,正确才会自动切换到下个Entry框

from tkinter import *

master = Tk()
master.title("Jason niu工作室")
theLabel=tk.Label(master,text="进入GUI世界,请开始你的表演!\n请问我们是什么工作室?\n(输入正确才能自动切换到下一行)")
theLabel.pack() 

def test():
    if e1.get()=="Jason niu工作室":
        print ("正确!")
        return True
    else:
        print ("错误!")
        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应用案例:利用输入框Entry组件实现回答问题,正确才会自动切换到下个Entry框

#tkinter应用案例:利用输入框Entry组件实现回答问题,正确才会自动切换到下个Entry框

from tkinter import *

master = Tk()
master.title("Jason niu工作室")
theLabel=tk.Label(master,text="进入GUI世界,请开始你的表演!\n请问我们是什么工作室?\n(输入正确才能自动切换到下一行)")
theLabel.pack() 

def test():
    if e1.get()=="Jason niu工作室":
        print ("正确!")
        return True
    else:
        print ("错误!")
        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应用案例:利用输入框Entry组件实现回答问题,正确触发事件A,输入错误触发事件B

#tkinter应用案例:利用输入框Entry组件实现回答问题,正确触发事件A,输入错误触发事件B
from tkinter import *

master = Tk()
master.title("Jason niu工作室")
theLabel=tk.Label(master,text="进入GUI世界,请开始你的表演!\n请问我们是什么工作室?\n(输入正确触发事件A,输入错误触发事件B)")
theLabel.pack() 

v = StringVar()  

def test1():
    if v.get()=="Jason niu工作室":
        print ("正确!")
        return True
    else:
        print ("错误!")
        e1.delete(0,END)
        return False

def test2():
    print ("我是事件B,因为你回答错误所以我被执行。。。")
    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应用案例:利用输入框Entry组件实现回答问题,只有输入错误打印出三个参数

#tkinter应用案例:利用输入框Entry组件实现回答问题,只有输入错误打印出三个参数
from tkinter import *

master = Tk()
master.title("Jason niu工作室")
theLabel=tk.Label(master,text="进入GUI世界,请开始你的表演!\n请问我们是什么工作室?\n(输入正确直接显示,输入错误打印出三个参数)")
theLabel.pack() 

v = StringVar()  

def test(content,reason,name):
    if content=="Jason niu工作室":
        print ("正确!")
        return True
    else:
        print ("错误!")
        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()
(0)

相关推荐