2017-08-20 3 views
-1

を表示:分:秒の形式をし、それのためのTkinterを使用。私は基本的にプログラムを完了させましたが、そこに問題があります。最初の結果は完全に計算されますが、もう一度計算を押すと結果に連結されます。ユーザーが再び計算したいときに最初の結果をクリアするにはどうすれば修正できますか?私はself.result.delete(0、END)を使用してみましたが、それは計算の後に何も表示されません。ここに問題の問題の関数があります。クリアTkinterの入力ボックスの後、私は時間に秒を計算していた結果

+1

内のすべての文字に対応するエントリをクリアする方法は、(ワイルドカードのインポートを行ったと仮定した場合) 'self.result.delete(0、ENDを)'呼び出すこと確かです。どのように呼び出されたかを示す[mcve]を表示してください。 –

+0

@BryanOakleyそれにself.result.delete(0、END)と一緒に完全なコードを有するポストを編集しました。 – Accelerate

+1

あなたはなぜあなたが挿入した後に削除していますか?新しいテキストを挿入する前に古いテキストを削除することが発生しましたか? –

答えて

0

以下は、あなたがbuttonを使用してentryウィジェットをクリアする方法を示しています

from tkinter import * 

class App: 
    def __init__(self, root): 
     self.root = root 
     self.entry = Entry(self.root) 
     self.button = Button(root, text="Ok", command=self.command) 
     self.entry.pack() 
     self.button.pack() 
    def command(self): 
     self.entry.delete(0, END) 

root = Tk() 
App(root) 
root.mainloop() 

コードはかなり自明、self.entry.delete(0, END)で単に位置からのエントリでテキストを削除します「0」の位置に "END 'あなたがこれを行うだろう

0

方法がtextbox.delete(0, END)です。 END(または "end")は、エントリウィジェットの最後の文字の直後の位置に対応します。範囲(0、END)はウィジェット

関連する問題