python tkinter画布

本文介绍了Python的GUI库Tkinter,特别是如何使用Tkinter创建画布,并展示了几个简单的画布应用Demo,包括画布的基本属性和移动图形的实现。

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

Tkinter 是 Python 的标准 GUI 库。Python 使用 Tkinter 可以快速的创建 GUI 应用程序。
由于 Tkinter 是内置到 python 的安装包中、只要安装好 Python 之后就能 import Tkinter 库、而且 IDLE 也是用 Tkinter 编写而成、对于简单的图形界面 Tkinter 还是能应付自如

Tkinter 的创建画布语法

canvas画布显示:

from tkinter import *
import time
tk=Tk()
canvas = Canvas(tk,width=100,height=100,bg="red")#bg="red"
canvas.pack()
tk.mainloop()

结果为
这里写图片描述
红色结果为画布,画布的属性有宽(width),高(height)背景颜色(bg)等一些属性

自己写了几个小Demo

from tkinter import *
import time
tk=Tk()
canvas = Canvas(tk,width=400,height=400)#bg="red"
canvas.pack()
tk.attributes()
p1=10,200
p2=200,10
p3=390,200
canvas.create_rectangle(p1,p2,fill="green")
canvas.create_polygon(p1,p2,p3,fill="green")
canvas.create_polygon(0,0,50,50,fill="blue",outline="blue")
canvas.create_oval(0,0,100,100,fill="red")
canvas.create_text(50,50,text="*")
canvas.create_polygon(0,200,400,200,200,400,fill="red",outline="red")
canvas.create_arc(0,0,400,400,extent=180,fill="green")
tk.mainloop()

这个呢就是纯粹的乱画的,为了熟悉GUI,有点难看,见谅
运行结果为:
这里写图片描述

还做了一个移动的图形demo
代码

from tkinter import *
import time
tk=Tk()
canvas = Canvas(tk,width=400,height=400)#bg="red"
canvas.pack()
id1=canvas.create_oval(10,10,20,20,fill="red")
def re(event):
    if event.keysym =="Up":
        canvas.itemconfig(id1, fill="black")
        canvas.move(id1,0,-2)
    elif event.keysym =="Down":
        canvas.itemconfig(id1, fill="yellow")
        canvas.move(id1,0,2)
    elif event.keysym == "Left":
        canvas.itemconfig(id1, fill="green")
        canvas.move(id1, -2, 0)
    elif event.keysym =="Right":
        canvas.itemconfig(id1,fill="blue")
        canvas.move(id1,2,0)
canvas.bind_all("<KeyPress-Up>",re)
canvas.bind_all("<KeyPress-Down>",re)
canvas.bind_all("<KeyPress-Left>",re)
canvas.bind_all("<KeyPress-Right>",re)
tk.mainloop()

这个呢做了一个上下左右移动小玩意。
如果真的想看,可以复制代码看看运行结果,用上下左右键测试。

今天先弄这些。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值