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

举报
一个处女座的程序猿 发表于 2021/03/30 02:37:27 2021/03/30
【摘要】 Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(Canvas) 导读 动态演示调用python库的tkinter带你进入GUI世界(Canvas)     目录 tkinter应用案例 1、tkinter应用案例:在Canvas画布上绘制线条、矩形等 2、tkinter应用案例:将Canv...

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

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

 

 

目录

tkinter应用案例

1、tkinter应用案例:在Canvas画布上绘制线条、矩形等

2、tkinter应用案例:将Canvas画布上绘制线条、矩形等进行更改、删除等操作

3、tkinter应用案例:将Canvas画布上绘制对角线、矩形、添加文本内容

4、tkinter应用案例:在Canvas画布上绘制对角线、椭圆形、添加文本内容

5、tkinter应用案例:Canvas画布上绘制五角星

6、tkinter应用案例:Canvas画布上随意绘画


 

 

 

tkinter应用案例

1、tkinter应用案例:在Canvas画布上绘制线条、矩形等


  
  1. #tkinter应用案例:在Canvas画布上绘制线条、矩形等
  2. from tkinter import *
  3. root = Tk()
  4. root.title("Jason niu工作室")
  5. theLabel=tk.Label(root,text="进入GUI世界,请开始你的表演!\n(Canvas画布可以让你尽情挥洒)")
  6. theLabel.pack()
  7. w = Canvas(root,width=400,height=200,background="white")
  8. w.pack()
  9. w.create_line(0,100,400,100,fill="Green")
  10. w.create_line(200,0,200,200,fill="red",dash=(4,4))
  11. w.create_rectangle(100,50,300,150,fill="blue")
  12. mainloop()

 

2、tkinter应用案例:将Canvas画布上绘制线条、矩形等进行更改、删除等操作


  
  1. #tkinter应用案例:将Canvas画布上绘制线条、矩形等进行更改、删除等操作
  2. from tkinter import *
  3. root = Tk()
  4. root.title("Jason niu工作室")
  5. theLabel=tk.Label(root,text="进入GUI世界,请开始你的表演!\n(更改、删除Canvas画布上的内容)")
  6. theLabel.pack()
  7. w = Canvas(root,width=200,height=100,background="white")
  8. w.pack()
  9. line1 = w.create_line(0,50,200,50,fill="yellow")
  10. line2 = w.create_line(100,0,100,100,fill="red",dash=(4,4))
  11. rect1 = w.create_rectangle(50,25,150,75,fill="blue")
  12. #修改的三个方法coords、itemconfig、delete(move)
  13. w.coords(line1,0,25,200,25)
  14. w.itemconfig(rect1,fill = "red")
  15. w.delete(line2)
  16. Button(root,text="删除全部",command=(lambda x=ALL:w.delete(x))).pack()
  17. mainloop()

 

 

3、tkinter应用案例:将Canvas画布上绘制对角线、矩形、添加文本内容


  
  1. #tkinter应用案例:将Canvas画布上绘制对角线、矩形、添加文本内容
  2. from tkinter import *
  3. root = Tk()
  4. root.title("Jason niu工作室")
  5. theLabel=tk.Label(root,text="进入GUI世界,请开始你的表演!\n(更改、删除Canvas画布上的内容)")
  6. theLabel.pack()
  7. w = Canvas(root,width=400,height=200)
  8. w.pack()
  9. w.create_line(0,0,400,200,fill="green",width=3)
  10. w.create_line(400,0,0,200,fill="green",width=3)
  11. w.create_rectangle(80,40,320,160,fill="green")
  12. w.create_rectangle(130,70,270,130,fill="yellow")
  13. w.create_text(200,100,text="Jason niu工作室")
  14. mainloop()

 

4、tkinter应用案例:在Canvas画布上绘制对角线、椭圆形、添加文本内容


  
  1. #tkinter应用案例:在Canvas画布上绘制对角线、椭圆形、添加文本内容
  2. from tkinter import *
  3. root = Tk()
  4. root.title("Jason niu工作室")
  5. theLabel=tk.Label(root,text="进入GUI世界,请开始你的表演!\n(在Canvas画布上绘制对角线、椭圆形、添加文本内容)")
  6. theLabel.pack()
  7. w = Canvas(root,width=200,height=100)
  8. w.pack()
  9. w.create_rectangle(40,20,160,80,dash=(4,4))
  10. w.create_oval(40,20,160,80,fill="blue")
  11. w.create_text(100,50,text="Jason niu工作室")
  12. mainloop()

 

5、tkinter应用案例:Canvas画布上绘制五角星

 


  
  1. #tkinter应用案例:Canvas画布上绘制五角星
  2. from tkinter import *
  3. import math as m
  4. root = Tk()
  5. root.title("Jason niu工作室")
  6. theLabel=tk.Label(root,text="进入GUI世界,请开始你的表演!\n(我就是这么任性,绘制五角星!)")
  7. theLabel.pack()
  8. w = Canvas(root,width=200,height=100)
  9. w.pack()
  10. center_x = 100
  11. center_y = 50
  12. r=50
  13. point = [
  14. # 左上点
  15. center_x - int(r*m.sin(2*m.pi/5)),
  16. center_y - int(r*m.cos(2*m.pi/5)),
  17. # 右上点
  18. center_x + int(r*m.sin(2*m.pi/5)),
  19. center_y - int(r*m.cos(2*m.pi/5)),
  20. # 左下角
  21. center_x - int(r*m.sin(m.pi/5)),
  22. center_y + int(r*m.cos(m.pi/5)),
  23. # 顶点
  24. center_x,
  25. center_y -r,
  26. # 右下点
  27. center_x + int(r*m.sin(m.pi/5)),
  28. center_y + int(r*m.cos(m.pi/5)),
  29. ]
  30. w.create_polygon(point,outline="blue",fill="red")
  31. mainloop()

 

 

6、tkinter应用案例:Canvas画布上随意绘画


  
  1. #tkinter应用案例:Canvas画布上随意绘画
  2. from tkinter import *
  3. import math as m
  4. root = Tk()
  5. root.title("Jason niu工作室")
  6. theLabel=tk.Label(root,text="进入GUI世界,请开始你的表演!\n(我是神笔马良,想怎么画就怎么画!)")
  7. theLabel.pack()
  8. w = Canvas(root,width=400,height=200)
  9. w.pack()
  10. def paint(event):
  11. x1,y1 = (event.x-1),(event.y-1)
  12. x2,y2 = (event.x+1),(event.y+1)
  13. w.create_oval(x1,y1,x2,y2,fill="blue")
  14. w.bind("<B1-Motion>",paint) #将画布与鼠标左键绑定,绑定方法是paint方法
  15. Label(root,text="把鼠标左键当作你的画笔,绘制你梦想的世界吧......").pack(side=BOTTOM)
  16. mainloop()

 

 

 

文章来源: yunyaniu.blog.csdn.net,作者:一个处女座的程序猿,版权归原作者所有,如需转载,请联系作者。

原文链接:yunyaniu.blog.csdn.net/article/details/79633443

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。