美文网首页
Python-tkinter(Canvas)有趣小例子(1)

Python-tkinter(Canvas)有趣小例子(1)

作者: DonkeyJason | 来源:发表于2018-03-06 17:47 被阅读0次

note :本文代码执行环境:win10,PyCharm/jupyter notebook,tkinter,Python3

Tkinter教程之Canvas篇

提供可以用来进行绘图的Container,支持基本的几何元素,使用Canvas进行绘图时,所有的操作都是通过Canvas,不是通过它的元素

元素的表示可以使用handle或tag。

1.第一个Canvas程序

# 指定画布的颜色为白色
from tkinter import *
root = Tk()
# 创建一个Canvas,设置其背景色为黑色
cv = Canvas(root,bg = 'black
')
cv.pack()
root.mainloop()
# 为明显起见,将背景色设置为黑色,用以区别root
canvas窗口

2.创建一个item

# 创建一个矩形,指定画布的颜色为白色
from tkinter import *
root = Tk()
# 创建一个Canvas,设置其背景色为白色
cv = Canvas(root,bg = 'white')
# 创建一个矩形,坐标为(10,10,110,110)
cv.create_rectangle(10,10,110,110)
cv.pack()
root.mainloop()
# 为明显起见,将背景色设置为白色,用以区别root
创建item

3.指定item的填充色,边框颜色,边框宽度

# 创建一个矩形,指定画布的背景色为白色
# 使用属性fill设置它的填充颜色
from tkinter import *
root = Tk()
# 创建一个Canvas,设置其背景色为白色
cv = Canvas(root,bg = 'white')
cv.create_rectangle(10,10,110,110,fill = 'red',outline = 'green')
cv.pack()
root.mainloop()
# 指定矩形的填充色为红色
item属性

6.画虚线

# 指定画布的背景色为白色
# 使用属性dash,这个值只能为奇数
from tkinter import *
root = Tk()
# 创建一个Canvas,设置其背景色为白色
cv = Canvas(root,bg = 'white')
cv.create_rectangle(10,10,110,110,
                    outline = 'red',
                    dash = 10,
                    fill = 'green')
cv.pack()
root.mainloop()
# 指定矩形的边框颜色为红色,画虚线
虚线框

7.使用画刷填充

# 指定画布的背景色为白色
# 使用属性stipple
from tkinter import *
root = Tk()
# 创建一个Canvas,设置其背景色为白色
cv = Canvas(root,bg = 'white')
cv.create_rectangle(10,10,110,110,
                    outline = 'red',
                    stipple = 'gray12',
                    fill = 'green')
cv.pack()
root.mainloop()
# 指定矩形的边框颜色为红色,自定义画刷
画刷填充

8.修改item的坐标

# 指定画布的背景色为白色
# 使用Canvas的方法来重新设置item的坐标
from tkinter import *
root = Tk()
# 创建一个Canvas,设置其背景色为白色
cv = Canvas(root,bg = 'white')
rt = cv.create_rectangle(10,10,110,110,
                    outline = 'red',
                    stipple = 'gray12',
                    fill = 'green')
cv.pack()
# 重新设置rt的坐标(相当于移动一个item)
cv.coords(rt,(110,110,110,110))
root.mainloop()
# 动态修改item的坐标
item坐标设置

相关文章

网友评论

      本文标题:Python-tkinter(Canvas)有趣小例子(1)

      本文链接:https://www.haomeiwen.com/subject/enfrfftx.html