前提・実現したいこと
選択したtxtデータをテキストボックス内に表示させ、txtデータ内の文字を1秒毎に赤➡緑➡赤➡緑と変化させたい。
発生している問題・エラーメッセージ
【発生している問題】 エラー文は発生せず、何処が間違っているかが分からない状況です。 file_read関数内のtxt.deleteとtxt.insertを上手く実行出来ずに困っています。 何処が間違っていて、どのようにしたらinsertとdeleteが実行出来るのかを教えて頂けたらと思います。 よろしくお願いいたします。
該当のソースコード
import tkinter as tk import tkinter.filedialog import time class Application(tkinter.Tk): def __init__(self): super().__init__() self.txt = tk.Text(height=20, width=50) self.txt.pack() self.txt.tag_configure("r", foreground="#e41a1c") self.txt.tag_configure("g", foreground="#00FF00") self.txt.configure(state="disabled") self.read_button = tkinter.Button(self,text='変化',command=self.file_read) self.read_button.pack() def file_read(self): file_path = tkinter.filedialog.askopenfilename() if len(file_path) != 0: f = open(file_path) data = f.read() for j in range(0,4): self.txt.delete("1.0","end") self.txt.insert("end", data,'r') self.txt.update() time.sleep(1) self.txt.delete("1.0","end") self.txt.insert("end", data,'g') self.txt.update() f.close() else: data = '' return data app = Application() app.mainloop()
試したこと
file_read関数内でself.txtを宣言しないと、実行されないのかと思い
self.txt = tk.Text(height=20, width=50)
self.txt.pack()
をfile_read関数内に書いてみましたが、エラー無しでテキストボックス内には何も表示されませんでした。
補足情報(FW/ツールのバージョンなど)
python3.7
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。