0
我希望能夠暫停和思考此程序的每一步,並通過單擊屏幕前進到下一步。最初我嘗試添加一些事件,但隨後我的大腦開始提醒我,這不是一個程序性程序,第一個綁定仍然是唯一的(!)。主要程序如下,非常感謝任何幫助。Python龜等待點擊
def tree(self, branchLen):
if branchLen > 5:
self.screen.onscreenclick(lambda x,y: self.t.forward(branchLen))
self.screen.onscreenclick(lambda x,y: self.t.right(20))
self.tree(branchLen-15)
self.screen.onscreenclick(lambda x,y: self.t.left(40))
self.tree(branchLen-15)
self.screen.onscreenclick(lambda x,y: self.t.right(20))
self.screen.onscreenclick(lambda x,y: self.t.backward(branchLen))
import turtle
class Tree(object):
def __init__(self):
self.t = turtle.Turtle()
self.screen = turtle.Screen()
self.t.left(90)
self.t.up()
self.t.backward(100)
self.t.down()
self.t.color("green")
self.tree(75)
def tree(self, branchLen):
if branchLen > 5:
self.t.forward(branchLen)
self.t.right(20)
self.tree(branchLen-15)
self.t.left(40)
self.tree(branchLen-15)
self.t.right(20)
self.t.backward(branchLen)
tree = Tree()
這很好 - 謝謝。請注意,瞭解QueuedTurtle課程將對我進行一些認真的研究。我將從修改隊列開始,但是關於這些工作的更多信息將會有所幫助。例如,'_CFG'是指什麼? – Robin
@Robin,'__init__'方法的大部分都是從Turtle類複製而來的,這個類也是RawTurtle的子類 - 我嘗試了繼承Turtle,但是這個效果更好。這個方法的唯一補充就是'onclick'處理程序的設置。 '_CFG'的東西是從某種配置結構中獲取信息並初始化烏龜,並且除了模擬烏龜外,它對QueuedTurtle的功能沒有任何影響。 – cdlane