Tkinter之canvas

Tkinter 提供了 Canvas 组件来实现绘图。既可在 Canvas 中绘制直线、矩形、椭圆等各种几何图形,也可绘制图片、文字、UI 组件(如 Button)等。
Canvas 允许重新改变这些图形项(Tkinter 将程序绘制的所有东西统称为 item)的属性,比如改变其坐标、外观等。
 
示例:
from Tkinter import *
window=Tk()
window.title('My Window')
window.geometry('600x800')  
 
canvas = Canvas(window, bg='grey', height=500, width=500)
 
line = canvas.create_line(105, 10, 105, 200) 
# 画直线:两个端点的x,y坐标(x0,y0,x1,y1)
rect = canvas.create_rectangle(200, 10, 200+100, 10+50)  
# 画矩形:左上端点的x,y坐标与延申的宽度高度(x0,y0,x0+宽,y0+高)
arc = canvas.create_arc(10, 10, 200, 200, start=60, extent=300)   
# 画扇形椭圆:整圆的四个顶点:左点x0,上点y0,右点x1,下点y1.从60度开始旋转300度结束
oval = canvas.create_oval(10, 10, 100, 100, fill='red')  
# 画整圆:整圆的四个顶点:左点x0,上点y0,右点x1,下点y1.fill=''表示无色填充
 
canvas.pack()
 
def moveit():
    canvas.move(oval, 50, 20) 
# 移动oval,按每次(x=50, y=20)步长进行移动
 
Button(window, text='move oval',command=moveit).pack()
 
window.mainloop()
 
 
posted @ 2019-10-30 13:58  数之美  阅读(921)  评论(1编辑  收藏  举报