Python Tkinter 之Canvas控件(Python GUI 系列11)
python tkinter 之canvas控件(python gui 系列11)
1. 序言
本章介绍tkinter的canvas控件,本文是python gui系列的第11篇文章,整个约20篇博客,将全面的介绍python tkinter常用控件,最后还将基于tkinter搭建两个比较完整的小项目。
2. 环境信息
********************************
本系列运行平台:mac os 10.13.4
python 版本:3.6.4
********************************
3. canvas
canvas为tkinter提供了绘图功能.其提供的图形包括线形,圆形,图片,甚至其他控件. canvas控件为绘制图形图表,编辑图形,自定义控件提供了可能.。使用方法:canvas(root,option,…)。
其中option列表如下:
函数 |
描述 |
master |
代表了父窗口 |
bg |
背景色,如bg=”red”,bg="#ff56ef" |
fg |
前景色,如fg=”red”,fg="#ff56ef" |
height |
设置显示高度、如果未设置此项,其大小以适应内容标签 |
relief |
指定外观装饰边界附近的标签,默认是平的,可以设置的参数:flat、groove、raised、ridge、solid、sunken |
width |
设置显示宽度,如果未设置此项,其大小以适应内容标签 |
state |
设置组件状态;正常(normal),激活(active),禁用(disabled) |
bd |
设置button的边框大小;bd(bordwidth)缺省为1或2个像素 |
除了option,canvas还有一些专属的函数,列表如下:
create_arc |
绘制圆弧; |
create_bitmap |
绘制位图,支持xbm,bitmap= bitmapimage(file = filepath) |
create_image |
绘制图片,支持gif(x,y,image,anchor); image= photoimage(file="../xxx/xxx.gif") ,目前仅支持gif格式 |
create_line |
绘制支线 |
create_oval; |
绘制椭圆; |
create_polygon |
绘制多边形(坐标依次罗列,不用加括号,还有参数,fill,outline); |
create_rectangle |
绘制矩形((a,b,c,d),值为左上角和右下角的坐标); |
create_text |
绘制文字(字体参数font,),如font=("arial", 8),font=("helvetica 16 bold italic") |
create_window |
绘制窗口; |
delete |
删除绘制的图形; |
itemconfig |
修改图形属性,第一个参数为图形的id,后边为想修改的参数; |
move |
移动图像 |
coords(id) |
返回对象的位置的两个坐标(4个数字元组) |
4. 实例
看一个例子:橙色背景上绘制一条线
from tkinter import * mywindow=tk() mywindow.title("简单绘画") mywindow.geometry("400x300+300+200") # width,height:设置画布的宽高,bg:设置背景色 can=canvas(mywindow,width=400,height=300,bg="orange") # 绘制一条线,起点--终点,线宽 can.create_line((0,0),(200,200),width=4) # 绘制文字,前两个参数为字的位置 can.create_text(300,30,text="绘制",font=("arial", 18)) # 布局方式 can.pack() #进入消息循环 mywindow.mainloop()
运行结果:
上一篇: 看全球10大令人连连称奇的趣味餐厅
下一篇: 漫游度假天堂垦丁 *的天涯海角
推荐阅读
-
Python Tkinter之Button控件介绍
-
Python Tkinter 之Canvas控件(Python GUI 系列11)
-
Python:GUI之tkinter学习笔记之messagebox、filedialog
-
Python GUI之Tkinter
-
Python GUI开发之Tkinter基础篇5:Listbox、Scrollbar组件
-
Python Tkinter 之Canvas控件(Python GUI 系列11)
-
Python Tkinter之Button控件介绍
-
Python Tkinter 之Entry控件(Python GUI 系列5)
-
Python Tkinter 之Checkbutton控件(Python GUI 系列7)
-
Python笔记之Tkinter(Frame控件容器)