天下程序员首页cx06.com
管理 |  登录 |  注册
canvas画布上画10个矩形完整改进版【案例】
更新于:2024-08-03


from tkinter import *
import sys
import random
class App():
    def __init__(self,tk=None):
        self.createWidget(tk)

    # 组件集合=====
    def createWidget(self,tk):
        self.canvas=Canvas(tk,width=500,height=400,bg="green")
        line=self.canvas.create_line(10,10,20,30,40,50)
        rect=self.canvas.create_rectangle(20,20,30,40)
        oval=self.canvas.create_oval(50,59,300,100)
        global photo
        photo=PhotoImage(file=sys.path[0]+"/imgs/logo.png")
        self.canvas.create_image(150,200,image=photo)
        self.canvas.pack()
        Button(tk,text="画10个矩形",command=self.drawtu).pack()
    # 组件相关函数=====
    def drawtu(self):
        for i in range(0,10):
            w=int(int(self.canvas['width'])/2)
            h=int(int(self.canvas['height'])/2)
            x1=random.randrange(0,w)
            y1=random.randrange(0,h)
            x2=x1+random.randrange(0,w)
            y2=y1+random.randrange(0,h)
            self.canvas.create_rectangle(x1,y1,x2,y2)

tk=Tk()
tk.title("第一个tk程序")
tk.geometry("600x500+100+200")
app=App(tk)
tk.mainloop()
天下程序员 www.cx06.com 程序员的网上家园!
作者微信:13126507001