Python 删除Tkinter中的画布小部件 从Tkinter导入* 随机输入 root=Tk() 宽度=700 高度=600 画布=画布(根,宽度=宽度,高度=高度,bg=“浅蓝色”) canvas.pack() 管道=[] 新管道等级: 定义初始(自、管道位置、管道孔): self.pipe\u pos=列表(pipe\u pos) def更新(自我): 自管道位置[0]-=3 自管道位置[2]=3 def牵引(自): 画布。创建矩形(self.pipe\u pos,fill=“绿色”) def获取位置(自身): 返回自我管道位置 def生成_管道(): 管道孔=随机。随机范围(0,高度) 管道位置=[宽度-100,0,宽度,管道孔] 管道。附加(新管道(管道位置、管道孔)) 绘制项目() canvas.after(2000,生成_管道) def draw_items(): 对于管道中的管道: if pipe.get_pos()[2]

Python 删除Tkinter中的画布小部件 从Tkinter导入* 随机输入 root=Tk() 宽度=700 高度=600 画布=画布(根,宽度=宽度,高度=高度,bg=“浅蓝色”) canvas.pack() 管道=[] 新管道等级: 定义初始(自、管道位置、管道孔): self.pipe\u pos=列表(pipe\u pos) def更新(自我): 自管道位置[0]-=3 自管道位置[2]=3 def牵引(自): 画布。创建矩形(self.pipe\u pos,fill=“绿色”) def获取位置(自身): 返回自我管道位置 def生成_管道(): 管道孔=随机。随机范围(0,高度) 管道位置=[宽度-100,0,宽度,管道孔] 管道。附加(新管道(管道位置、管道孔)) 绘制项目() canvas.after(2000,生成_管道) def draw_items(): 对于管道中的管道: if pipe.get_pos()[2],python,canvas,tkinter,Python,Canvas,Tkinter,canvas.create_矩形(self.pipe_pos,fill=“green”)返回一个ID 您可以使用此ID将其放入如下方法中 from Tkinter import * import random root = Tk() width = 700 height = 600 canvas = Canvas(root, width = width, height = height, bg = "light blue") canvas.pack() pipes = [] class Ne

canvas.create_矩形(self.pipe_pos,fill=“green”)
返回一个ID

您可以使用此ID将其放入如下方法中

from Tkinter import *
import random

root = Tk()
width = 700
height = 600
canvas = Canvas(root, width = width, height = height, bg = "light blue")
canvas.pack()
pipes = []

class NewPipe:
    def __init__(self, pipe_pos, pipe_hole):
        self.pipe_pos = list(pipe_pos)
    def update(self):
        self.pipe_pos[0] -= 3
        self.pipe_pos[2] -= 3
    def draw(self):
        canvas.create_rectangle(self.pipe_pos, fill = "green")
    def get_pos(self):
        return self.pipe_pos

def generate_pipe():
    pipe_hole = random.randrange(0, height)
    pipe_pos = [width - 100, 0, width, pipe_hole]
    pipes.append(NewPipe(pipe_pos, pipe_hole))
    draw_items()
    canvas.after(2000, generate_pipe)

def draw_items():
    for pipe in pipes:
        if pipe.get_pos()[2] <= 0 - 5:
            pipes.remove(pipe)
        else:
            pipe.draw()
            pipe.update()
    canvas.after(100, draw_items)

def jump(press):
    pass

canvas.bind("<Button-1>", jump)
canvas.after(2000, generate_pipe)
draw_items()
mainloop()
查看
帮助(画布)


画布不是为一帧绘制内容的帧缓冲区。绘制的内容不会消失,您可以移动它并更改创建时可以使用的所有参数。

画布。创建矩形(self.pipe,fill=“green”)
返回一个ID

您可以使用此ID将其放入如下方法中

from Tkinter import *
import random

root = Tk()
width = 700
height = 600
canvas = Canvas(root, width = width, height = height, bg = "light blue")
canvas.pack()
pipes = []

class NewPipe:
    def __init__(self, pipe_pos, pipe_hole):
        self.pipe_pos = list(pipe_pos)
    def update(self):
        self.pipe_pos[0] -= 3
        self.pipe_pos[2] -= 3
    def draw(self):
        canvas.create_rectangle(self.pipe_pos, fill = "green")
    def get_pos(self):
        return self.pipe_pos

def generate_pipe():
    pipe_hole = random.randrange(0, height)
    pipe_pos = [width - 100, 0, width, pipe_hole]
    pipes.append(NewPipe(pipe_pos, pipe_hole))
    draw_items()
    canvas.after(2000, generate_pipe)

def draw_items():
    for pipe in pipes:
        if pipe.get_pos()[2] <= 0 - 5:
            pipes.remove(pipe)
        else:
            pipe.draw()
            pipe.update()
    canvas.after(100, draw_items)

def jump(press):
    pass

canvas.bind("<Button-1>", jump)
canvas.after(2000, generate_pipe)
draw_items()
mainloop()
查看
帮助(画布)


画布不是为一帧绘制内容的帧缓冲区。绘制的内容不会消失,您可以移动它并更改创建时可以使用的所有参数。

画布。创建矩形(self.pipe,fill=“green”)
返回一个ID

您可以使用此ID将其放入如下方法中

from Tkinter import *
import random

root = Tk()
width = 700
height = 600
canvas = Canvas(root, width = width, height = height, bg = "light blue")
canvas.pack()
pipes = []

class NewPipe:
    def __init__(self, pipe_pos, pipe_hole):
        self.pipe_pos = list(pipe_pos)
    def update(self):
        self.pipe_pos[0] -= 3
        self.pipe_pos[2] -= 3
    def draw(self):
        canvas.create_rectangle(self.pipe_pos, fill = "green")
    def get_pos(self):
        return self.pipe_pos

def generate_pipe():
    pipe_hole = random.randrange(0, height)
    pipe_pos = [width - 100, 0, width, pipe_hole]
    pipes.append(NewPipe(pipe_pos, pipe_hole))
    draw_items()
    canvas.after(2000, generate_pipe)

def draw_items():
    for pipe in pipes:
        if pipe.get_pos()[2] <= 0 - 5:
            pipes.remove(pipe)
        else:
            pipe.draw()
            pipe.update()
    canvas.after(100, draw_items)

def jump(press):
    pass

canvas.bind("<Button-1>", jump)
canvas.after(2000, generate_pipe)
draw_items()
mainloop()
查看
帮助(画布)


画布不是为一帧绘制内容的帧缓冲区。绘制的内容不会消失,您可以移动它并更改创建时可以使用的所有参数。

画布。创建矩形(self.pipe,fill=“green”)
返回一个ID

您可以使用此ID将其放入如下方法中

from Tkinter import *
import random

root = Tk()
width = 700
height = 600
canvas = Canvas(root, width = width, height = height, bg = "light blue")
canvas.pack()
pipes = []

class NewPipe:
    def __init__(self, pipe_pos, pipe_hole):
        self.pipe_pos = list(pipe_pos)
    def update(self):
        self.pipe_pos[0] -= 3
        self.pipe_pos[2] -= 3
    def draw(self):
        canvas.create_rectangle(self.pipe_pos, fill = "green")
    def get_pos(self):
        return self.pipe_pos

def generate_pipe():
    pipe_hole = random.randrange(0, height)
    pipe_pos = [width - 100, 0, width, pipe_hole]
    pipes.append(NewPipe(pipe_pos, pipe_hole))
    draw_items()
    canvas.after(2000, generate_pipe)

def draw_items():
    for pipe in pipes:
        if pipe.get_pos()[2] <= 0 - 5:
            pipes.remove(pipe)
        else:
            pipe.draw()
            pipe.update()
    canvas.after(100, draw_items)

def jump(press):
    pass

canvas.bind("<Button-1>", jump)
canvas.after(2000, generate_pipe)
draw_items()
mainloop()
查看
帮助(画布)

画布不是为一帧绘制内容的帧缓冲区。绘制的内容不会消失,您可以移动它并更改创建时可以使用的所有参数