前提・実現したいこと
tkinterで表示ボックスを作りそこにメッセージなどを表示したいのですが、
for文の処理が終わってから表示されてしまいます。
コードからすると、表示が先に実行されその後for文内の処理が先に実行され、処理終了後表示がメッセージボックス内に表示されます。
何がおかしいのでしょうか?
該当のソースコード
-- coding: utf-8 --
import tkinter as tk
import time
def serial_data_recv():
box.insert(tk.END, "ループ分処理中……"+ "\n") t = 0 for t in range(10): box.insert(tk.END, t) time.sleep(0.5) print(t)
def quit_func():
root.destroy()
ウィンドウを作る
root = tk.Tk()
root.geometry("500x400")
root.title("温度計")
履歴表示のテキストボックスを作る
box = tk.Text(root, font=("MS ゴシック", 14))
box.place(x=200, y=0, width=600, height=400)
ボタンを作る
button1 = tk.Button(root, text = "測定開始", font=("MS ゴシック", 14),
command=serial_data_recv)
button1.place(x = 40, y = 26)
ボタンを作る
button2 = tk.Button(root, text = "測定終了", font=("MS ゴシック", 14),
command=quit_func)
button2.place(x = 40, y = 340)
ウィンドウを表示する
root.mainloop()
試したこと
表示用の命令を先頭に記述しましたが、変わりませんでした。
補足情報(FW/ツールのバージョンなど)
python3.7 win10
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/20 04:32
2019/12/20 04:41