python中的tkinter包的使用-canvas画布

这篇博客介绍了Python的tkinter库中canvas组件的使用,包括如何插入gif图片、绘制直线、创建扇形以及如何移动图形。通过示例代码,展示了如何设置图形的位置和移动图形的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

可能是因为tKinter的版本原因,插入图片时,只能插入gif版本。

窗口界面: 

 

点击按钮:

import tkinter as tk

window=tk.Tk()
window.title('my window')
window.geometry('200x100')

canvas=tk.Canvas(window,
                 width=200,
                 height=100,
                 bg='blue')

image_file=tk.PhotoImage(file='ins.gif')
image=canvas.create_image(10,10,anchor='nw',image=image_file)
x0,y0,x1,y1=50,50,80,80
line=canvas.create_line(x0,y0,x1,y1)
oval=canvas.create_oval(x0,y0,x1,y1,fill='red')
arc=canvas.create_arc(x0+30,y0+30,x1+30,y1+30,start=0,extent=180)
rect=canvas.create_rectangle(100,30,120,50)
canvas.pack()

def moveit():
    canvas.move(rect,0,2)

b=tk.Button(window,
            width=20,
            height=2,
            command=moveit
            ).pack()
window.mainloop()
  • image_file = tk.PhotoImage(file='ins.gif')这一句是创造一个变量存放ins.gif这张图片。
  •  image = canvas.create_image(10, 10, anchor='nw', image=image_file)里面的参数10,10就是图片放入画布的坐标
  • anchor=nw则是把图片的左上角作为锚定点,在加上刚刚给的坐标位置,即可将图片位置确定。 最后一个参数的意思大家应该都知道,就是将刚刚存入的图片变量,赋值给image
  • create_line():主要实现的是画一条直线,后面()中给的参数就是线段两点的坐标,两点确定一条直线。此处给的就是从坐标(50,50)到(80,80)画一条直线。
  • create_arc():创建扇形时多了两个没见过的参数start=0extent=180,其实就是从0度到180度,就好像扇子的边打开一样。在我们看来就是个半圆, 如果改为extent=90,我们看到的就是一个1/4圆
  • moveit()方法:每点一次button 矩形就会移动这里canvas.move(rect, 0, 2)的参数(rect,0,2)就是移动rect这个变量,即我们看到的矩形 后面的0和2,也就是横坐标移动0个单位,纵坐标移动2个单位,简单的说就是每次点击,横向不动,纵向移动两个单位。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值