编辑: ok2015 2013-05-31
第5章绘图及图像处理 5.

1 绘制图形5.1.1 用画布组件绘图 画布是图形用户界面 tkinter 的组件,是一个矩形区域,用于绘制图形或作为容器放置 其他组件. 1.创建画布对象 创建画布对象的基本语法形式如下: w = Canvas(master, option=value, … ) 其中: ? master:代表父窗口. ? options:为属性参数,其意义如表 5.1 所示. 表5.1 画布的常用参数 Option 参数 说明 bg 背景颜色 height 画布的高 width 画布的宽 2.图形的绘制方法 Canvas 对象包含了大量的绘图方法,表5.2 列出了常用的绘图方法. 表5.2 Canvas 对象常用的绘图方法 方法 说明 create_line(x1, y1, x2, y2) 绘制一条从(x1,y1)到(x2,y2)的直线 create_rectangle(x1, y1, x2, y2) 绘制一个左上角为(x1,y1),右下角为(x2,y2)的矩形 create_polygon(x1, y1, x2, y2, x3, y3, x4, y4, x5, y5, x6, y6) 绘制一个顶点为(x1,y1),(x2,y2),…,的多边形 create_oval(x1, y1, x2, y2, fill='

color'

) 绘制一个左上角为(x1,y1), 右下角为(x2,y2)的外接矩形包 围的圆,fill 为填充颜色 create_arc(x1, y1, x2, y2, start=s0, extent=s) 绘制在左上角为(x1,y1), 右下角为(x2,y2)的外接矩形所包 围的一段圆弧,圆弧角度为 s,从s0 开始 create_image(w, h, anchor=NE, image=filename) 在w宽h高的矩形区域内,显示文件名为 filename 的图像 move(obj, x, y) 移动组件 obj.x 为水平方向变化量,y 为垂直方向变化量 视频录像 Python 程序设计案例教程――从入门到机器学习(微课版)

86 【例5-1】 绘制几何图形示例. 程序代码如下: '

'

'

窗体中的画布示例: 绘制小球和扇形 '

'

'

import tkinter import tkinter.messagebox win = tkinter.Tk() win.title('

画布示例'

) # 定义窗体标题 win.geometry('

400*200'

) # 定义窗体的大小400*200像素 can = tkinter.Canvas(win, height=200, width=400) # 定义画布 id = can.create_line(15,15,190,15) # 画一条直线 io1 = can.create_oval(50, 50, 100, 100, fill='

blue'

) # 画一蓝色圆 io2 = can.create_oval(59, 59, 68, 68, fill='

white'

) # 画一白色小圆 coord = 15, 120, 210,

220 arc = can.create_arc(coord, extent=150, fill= green ) # 画一个扇形 can.pack() win.mainloop() 程序运行结果如图 5.1 所示. 图5.1 绘制几何图形 【例5-2】 绘制笑脸. 程序代码如下: '

'

'

窗体中的画布示例: 绘制笑脸 '

'

'

import tkinter import tkinter.messagebox win = tkinter.Tk() win.title('

画布示例'

) 科 绘图及图像处理

87 第5章win.geometry('

250*250'

) can = tkinter.Canvas(win, height=250, width=250) # 定义画布 io1 = can.create_oval(35,30,210,210, fill='

yellow'

) # 画一黄色圆 io2 = can.create_oval(70,70,180,180, fill='

black'

) io3 = can.create_oval(65,70,185,170, outline='

yellow'

, fill='

yellow'

) io4 = can.create_oval(80,100,110,130, fill='

black'

) io5 = can.create_oval(150,100,180,130, fill='

black'

) can.pack() win.mainloop() 程序运行结果如图 5.2 所示. 图5.2 绘制笑脸 【例5-3】 显示图像示例. 程序代码如下: import tkinter.messagebox from tkinter import * win = tkinter.Tk() win.title('

绘图示例'

) # 定义窗体标题 win.geometry('

200*200'

) # 定义窗体的大小200*200像素 can = tkinter.Canvas(win, height=200, width=200) # 定义画布 filename = PhotoImage(file = test.gif ) image = can.create_image(150, 10, anchor=NE, image=filename) can.pack() win.mainloop() 程序运行结果如图 5.3 所示. Python 程序设计案例教程――从入门到机器学习(微课版)

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题