动画动画

时间:2011-09-18 02:55:59

标签: python animation pygtk gobject

我在Python 2.7和PyGTK 2.24中有一个项目。我使用以下代码在gtk.Fixed中创建gtk.Image的动画动画。

    def fishmove():
        global fishmove
        if fishmove < 640:
            fishmove = fishmove + 10
            fixed_hab.move(fish1, fishmove, 50)  

    gobject.timeout_add(1, fishmove)

然而,当程序出现而没有丢失任何错误时,图像不会移动。发生了什么事?

BTW,fishmove从0开始。

2 个答案:

答案 0 :(得分:2)

注意变量的命名!如果你有一个全局整数fishmove和一个同名的方法,这两个几乎肯定会以某种意想不到的方式干扰!

尝试将方法重命名为move_fish或某事。

答案 1 :(得分:1)

我解决了。我只需要在函数末尾添加“return True”行。这是固定代码。它有效。

def fishmove():
   global fishmove
   if fishmove < 640:
        fishmove = fishmove + 10
        fixed_hab.move(fish1, fishmove, 50)  
        return True

gobject.timeout_add(1, fishmove)