2016-09-28 6 views
1

これは私が書いたことです(オンラインでインスピレーションを得ました。私がプログラムを開くと、GUIが1つのボタンで表示されます。ボタンを押すと、時間が表示されます。しかし、ポップアップウィンドウを閉じてもう一度押すと、前回と同じ時刻になります。要するに:現在の時刻を表示するためにプログラムを再オープンする必要があります(現在の時刻が表示されてから現在の時刻に更新されないため)。Python GUIがプログラムの起動後に情報を更新しない

import Tkinter as tk 
import tkMessageBox 
import datetime 



ctime = datetime.datetime.now() .strftime("%Y-%m-%d %H:%M:%S") 
top = tk.Tk() 
def showInfo(): 
    tkMessageBox.showinfo("Today:", str(ctime)) 

B = tk.Button(top, text ="Click to show current time", command = showInfo) 
B.pack() 
top.mainloop() 

答えて

3

これを試してみてください:ボタン

2

をクリックしたとき

import Tkinter as tk 
import tkMessageBox 
import datetime 



top = tk.Tk() 
def showInfo(): 
    ctime = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") 
    tkMessageBox.showinfo("Today:", str(ctime)) 

B = tk.Button(top, text ="Click to show current time", command = showInfo) 
B.pack() 
top.mainloop() 

はあなたが現在の時間にあなたがクリックするたびに取得するための方法を使用することができますたびに更新する機能showInfoctimeを置きますボタン:

import Tkinter as tk 
import tkMessageBox 
import datetime 


def getTime(): 
    return datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") 

top = tk.Tk() 
def showInfo(): 
    tkMessageBox.showinfo("Today:", getTime()) 

B = tk.Button(top, text ="Click to show current time", command = showInfo) 
B.pack() 
top.mainloop() 
+0

@GI Joseこれは良いです。 – Ch4r

関連する問題