tkinter canvas绘图

import tkinter as tk
from tkinter import messagebox
from PIL import Image,ImageTk

root=tk.Tk()

root.geometry('960x480+200+100')
root.title('button')

canvas=tk.Canvas(root,highlightthickness=0)
canvas.place(width=960,height=480)

# bg=tk.PhotoImage(file='myw.png')
bg=ImageTk.PhotoImage(Image.open('view2.jpg'))

canvas.create_image(300,300,image=bg)
r1=canvas.create_rectangle(380,350,580,400,outline='black')
r2=canvas.create_rectangle(380+3,350+3,580-3,400-3,outline='black',width=2)
t=canvas.create_text(480,375,text='click',font=('楷体',20,'bold'),fill='green')

canvas.bind('<Button-1>',lambda event:bind_1(event))
canvas.bind('<Button-3>',lambda event:bind_3(event))
canvas.bind('<Motion>',lambda event:bind_2(event))

def bind_1(event):
    print(event)
    if 380<=event.x<=580 and 350<=event.y<=400:
        print('hello')
def bind_2(event):
    print(event)
    if 380<=event.x<=580 and 350<=event.y<=400:
        canvas.itemconfig(r1,outline='white')
        canvas.itemconfig(r2,outline='white')
        canvas.itemconfig(t,fill='white')
    else:
        canvas.itemconfig(r1, outline='black')
        canvas.itemconfig(r2, outline='black')
        canvas.itemconfig(t, fill='green')
def bind_3(event):
    print('hello')
    tk.messagebox.showinfo('helo','you are right')




root.mainloop()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值