Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(Entry/Entry的Command)-阿里云开发者社区

开发者社区> 一个处女座的程序猿> 正文

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

简介: Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(Entry/Entry的Command)
+关注继续查看

目录


tkinter应用案例—Entry/Entry的Command


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


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


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


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


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




tkinter应用案例—Entry/Entry的Command


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


image.png


#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框

image.png


#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框

image.png



#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

image.png



#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组件实现回答问题,只有输入错误打印出三个参数

image.png



#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()


 


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
推荐 2 款非常好用的应用 App
使用 Django 进行 Web 开发的时候,为了提高开发效率,少不了安装一些第三方应用 App
7 0
非常有意思的几个库
非常有意思的几个库
9 0
Windows下使用python库 curses遇到错误消息的解决方案
Windows下使用python库 curses遇到错误消息的解决方案
4 0
程序员学Python算法编程中常见的问题和算法
  一些著名问题与算法   如果您的飞船破了一个洞,我只能深表同情,因为我所解决的99个问题里唯独没有这个问题。   ——匿名者1   本文提到的所有问题与算法,因为有一些算法仅仅是为了试图说明某个原理,而有一些问题仅仅是为了某个算法而创造的。然而,作为索引,这里会列举出学习中最重要的那些问题与算法。   在本文大多数描述中,n代表的是问题规模,如一个序列中的元素数量。而在图论问题中,n表示的是节点的数量,m则表示边的数量。
4 0
阿里高校ECS使用体验
1、安装服务器控制面板(宝塔面板) 2、部署WEB服务(个人博客) 3、部署Python程序 4、测试不同版本Linux使用
13 0
这样学编程,直接原地起飞啊!
这样学编程,直接原地起飞啊!
4 0
大学最应该学习的 5 门课, 毕业后大厂 Offer 直接拿到手软!
大学最应该学习的 5 门课, 毕业后大厂 Offer 直接拿到手软!
6 0
推荐一个高大上的网易云音乐命令行播放工具:musicbox
推荐一个高大上的网易云音乐命令行播放工具:musicbox
5 0
+关注
一个处女座的程序猿
国内互联网圈知名博主、人工智能领域优秀创作者,全球最大中文IT社区博客专家、CSDN开发者联盟生态成员、中国开源社区专家、华为云社区专家、51CTO社区专家、Python社区专家等,曾受邀采访和评审十多次。仅在国内的CSDN平台,博客文章浏览量超过2500万,拥有超过57万的粉丝。
1701
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载