前提・実現したいこと
tkinterを使用して作成したモジュールをスレッドで動かしたいと思っています。
そこでテスト用に下のコードを書いて実行してみました。
しかし、下のコードのようにスレッドで動かそうとすると、Tkinterのウィンドウがちゃんと出てきません。
真っ白にフリーズしたウィンドが出てきます。
ちなみに、WindowsのUbuntuの環境では下のコードでもちゃんと動くのですが、MacだとTkinterのウィンドウが真っ白になってしまいます。
もし原因がわかる方がいましたら宜しくお願い致します。
該当のソースコード
Python
1import sys,os 2import threading 3from time import sleep 4from Tkinter import Tk 5 6def hello_process(): 7 while True: 8 print "Hello" 9 sleep(2) 10 11def tk_test(): 12 root = Tk() 13 root.mainloop() 14 15if __name__ == '__main__': 16 17 th_body = threading.Thread(target=tk_test, name='th_body') 18 th_body.setDaemon(True) 19 20 th_body.start() 21 hello_process()
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。