Python 2.7 /PyGTK2.24プロジェクトがあります。私はLinuxUbuntu11でビルドしています。
次のコードを使用して、画面上での画像の動きをアニメーション化します。
def move_fish():
global fishmove, flipped
if fishmove < 440 and flipped == False:
fishmove = fishmove + 10
fixed_hab.move(fish1, fishmove, 50)
return True
elif fishmove == 440 and flipped == False:
pixbufanim = gtk.gdk.PixbufAnimation("IMG/IMG-FISH-L.gif")
fish1.set_from_animation(pixbufanim)
flipped = True
fishmove = fishmove - 10
fixed_hab.move(fish1, fishmove, 50)
return True
elif fishmove > 0 and flipped == True:
fishmove = fishmove - 10
fixed_hab.move(fish1, fishmove, 50)
return True
elif fishmove == 0 and flipped == True:
pixbufanim = gtk.gdk.PixbufAnimation("IMG/IMG-FISH-R.gif")
fish1.set_from_animation(pixbufanim)
flipped = False
return True
gobject.timeout_add(100, move_fish)
コードは正常に実行され、コンパイルエラーや実行時のエラーは発生しません。ただし、ウィンドウを閉じた後、次のエラーが複数回発生します。(気をつけてください。fixed_hab(gtk.Fixed)オブジェクトとfish1(gtk.Image)オブジェクトは、関数宣言「def move_fish()」と同じスコープにあります。
Word4Word-9-16.py:1655:GtkWarning:gtk_fixed_move_internal:assertation `widget-> parent == GTK_WIDGET(fixed)'failed_hab.move(fish1、fishmove、50)
これは深刻ですか?修正できますか?これはエンドユーザーにとって物事を困難にするだろうか?
前もって感謝します!