まぁコンソールに出せているんだから簡単ではあるのですが、興味深いのはタイマーのかけ方。
参考のサイトさんの記事ではインデントが壊れてしまっているのですが、自分なりに解釈してみました。
#!/usr/bin/env python import tkinter as tk import time root = tk.Tk() root.title("Clock") btn = tk.Button(root,text = 'Quit',command=quit) spc = tk.Label(root, font=("times", 20, ""),text=" ") clock = tk.Label(root, font=("times", 50, "bold")) clock.grid(row=0,column=0) spc.grid(row=0,column=1) btn.grid(row=0,column=2) def tick(): now = time.strftime("%H:%M:%S") clock.config(text=now) clock.after(999, tick) tick() root.mainloop()
tickという処理を作っていますが、面白いのは 自分が実行された約一秒後に自分自身を呼び出す ことです。
なるほど、この方法はスマートというか、GUIパーツの機能をうまく生かした書き方だと思います。
もちろん精度によっては向かない処理もあるでしょうが、今回の時計程度なら問題ないでしょう。