"""python海龟画图继承与ondrag练习.py 本程序新建Durtle类,生成的拖动角色会换一个造型,松开它会隐藏 能读懂以下代码说明你的python海龟画图上了一个大台阶了。 """ from turtle import * class Durtle(Turtle): def __init__(self,images): Turtle.__init__(self,visible=False) self.begin_drag = 0 # 拖的标志 self.penup() self.images = images # 造型列表 self.index = 0 # 初始造型索引 self.amounts = len(images) # 造型数量 "设定初始造型" self.image = self.images[self.index] # 当前造型 self.shape(self.image) # 设定造型 self.st() # 显示 self.ondrag(self.act1) self.onrelease(self.act2) def alt_costume(self): "切换到下一个造型" if self.begin_drag == 0: self.index = self.index + 1 self.index = self.index % self.amounts self.image = self.images[self.index] self.shape(self.image) self.begin_drag += 1 def act1(self,x,y): """切换到下一个造型,定位到鼠标指针坐标""" self.alt_costume() self.goto(x,y) def act2(self,x,y): self.ht() self.goto(10000,10000) # 走你,扔到远远的一个地方去眼不见为净 self.begin_drag = 0 #print("松开") if __name__ == "__main__": images = "dog2-a.gif","dog2-b.gif","dog2-c.gif" width,height = 480,360 screen = Screen() screen.setup(width,height) screen.delay(0) [screen.addshape(image) for image in images] d = Durtle(images) screen.mainloop()