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