ラベルのテキストが0.1秒おきに動的に変化するGUIを作っています。動作を軽くするため過去のラベルを削除するようにしました。しかし、実行するとチカチカしてしまいます。ちょうど下のプログラムを実行したような状態です。
チカチカさせずにラベルの削除と表示を行う方法はありませんか?
(そもそも、0.1秒おきに更新させるのが誤りなのでしょうか?)
import tkinter as tk import tkinter.ttk as ttk import time def test(): BaseFrame2 = tk.Frame( root, width = 380, height = 280, pady=100, bg="red" ) BaseFrame2.place( x = 110, y = 115 ) label2 = tk.Label(BaseFrame2, text='This is Label.',bg="red") label2.pack() label2.update() object.ob.append(label2) def RegularCheck(): for label in object.ob: if label.winfo_ismapped(): label.pack_forget() object.ob = [] test() root.after(100,RegularCheck) if __name__ == '__main__': class Objects: ob = [] object = Objects() root = tk.Tk() root.title("Frame") root.geometry("600x600") BaseFrame = tk.Canvas( root, width = 400, height = 300, bg = "red" ) BaseFrame.place( x = 100, y = 100 ) RegularCheck() root.mainloop()
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/03/08 01:38 編集
2022/03/08 03:22 編集
2022/03/10 06:50
2022/03/11 19:44
2022/03/12 00:23