0

次の単純なコードは、Windows XP で永久にハングアップし、「チェック ダイアログ」テキストがコンソールに出力されることはありません。コードで作成されたウィンドウが表示されましたが、ブロックされています (マウスをウィンドウ領域に移動すると、マウスポインターは常に「読み込み中」アイコンになります)

同じコードは Windows 7 でも問題なく動作しますが、

ランタイムの詳細: Windows XP SP3、python 2.7.5、pytgtk-2.24-allinone

import gtk
import gobject

def checkDialog():
  print 'check dialog'
  return True

gobject.timeout_add(500, checkDialog)
gtk.threads_init()
w = gtk.Window()
w.show()
gtk.main()
4

1 に答える 1

0

最後に、IRC チャンネル #pygtk の 1 人が答えを教えてくれます。

gtk.threads_init()の代わりにgobject.threads_init( ) を使用する必要があります

Windows XP で gtk.threads_init() を呼び出した後、 pygtk gobject.timeout_add() が機能しない

于 2013-07-07T10:54:32.297 に答える