Tkinterで自動更新されるGUIを作成する方法|リアルタイム時計アプリの実装例
Tkinterを使用すると、自動的に更新されるよう設定できるGUIアプリケーションを簡単に構築できます。この記事では、時刻が変わるたびに自動的にリフレッシュされるGUIベースのデジタル時計を作成します。時計の時刻に加えて、曜日やタイムゾーンもあわせて表示します。
まずtkinterライブラリをインポートし、次に「strftime」関数を使って現在の時刻や曜日の情報を取得する関数を作成します。
コード例
# tkinterライブラリをインポート
from tkinter import *
import time
# ウィンドウのインスタンスを作成
win = Tk()
# ウィンドウのタイトルを設定
win.title("tutorialspoint.com")
# ウィンドウのサイズを定義
win.geometry("600x400")
# 時計を定義する関数
def clock():
hh = time.strftime("%I")
mm = time.strftime("%M")
ss = time.strftime("%S")
day = time.strftime("%A")
ap = time.strftime("%p")
time_zone = time.strftime("%Z")
my_lab.config(text=hh + ":" + mm + ":" + ss)
my_lab.after(1000, clock)
my_lab1.config(text=time_zone + " " + day)
# 時刻を更新する関数
def updateTime():
my_lab.config(text="New Text")
# 時計のテキストを持つラベルを作成
my_lab = Label(win, text="", font=("sans-serif", 56), fg="red")
my_lab.pack(pady=20)
my_lab1 = Label(win, text="", font=("Helvetica", 20), fg="blue")
my_lab1.pack(pady=10)
# clock関数を呼び出す
clock()
# ウィンドウを実行し続ける
win.mainloop()
実行結果
上記のコードを実行すると、ウィンドウ内に自動的に更新されるGUIアプリケーションが表示されます。

ポイント解説
- time.strftime():書式指定子(%I、%M、%Sなど)を使って、時・分・秒・曜日・午前/午後・タイムゾーンをそれぞれ文字列として取得します。
- config()メソッド:Labelウィジェットの表示テキストを動的に書き換えるために使用します。
- after(1000, clock):1000ミリ秒(1秒)ごとにclock関数を再帰的に呼び出すことで、時計を自動更新しています。
-
Pythonのtkinterで簡単なGUI電卓アプリを作る方法【初心者向け】
はじめにPythonでは、tkinterライブラリを使ってGUIコンポーネントを作成し、より使いやすいユーザーインターフェースを構築することができます。この記事では、tkinterとPillow(PIL)を組み合わせて、アイコン付きのシンプルなGUI電卓アプリケーションを作成する方法を、初心者向けに丁寧に解説していきます。事前準備開発を始める前に、いくつか準備しておくべきことがあります。まず、ローカルシステムから画像ファイルを読み込むために使用するPythonの画像処理ライブラリをインストールしましょう。PIL(Pillow)をインストールするには、ターミナルを起動して以下のコマンドを実行して
-
PythonとTkinterでデジタル時計を作成する方法【初心者向け解説】
Pythonの標準GUIライブラリ「Tkinter」を使えば、デスクトップアプリケーションを手軽に開発できます。本記事では、Tkinterを活用して、時・分・秒をリアルタイムに表示するデジタル時計を作成する方法を解説します。 デジタル時計の仕組み このプログラムでは、Pythonのtimeモジュールからstrftimeメソッドを使用し、「時:分:秒」形式で現在時刻を取得して表示します。具体的な流れは以下の通りです。 strftime(%H:%M:%S)で現在時刻を文字列として取得する Tkinterのラベル(Label)ウィジェットを作成し、時刻を表示する after()メソッドを使い、20