カテゴリ: Python 更新日: 2026/06/19

PythonでGUIアプリを作る方法!Tkinterの基本を初心者向けにやさしく解説

PythonでGUIアプリを作る方法!Tkinterの基本を解説
PythonでGUIアプリを作る方法!Tkinterの基本を解説

先生と生徒の会話形式で理解しよう

生徒

「Pythonで画面付きのアプリって作れるんですか?」

先生

「もちろん作れます。Tkinterという仕組みを使うと、ボタンや入力欄のあるアプリが作れます。」

生徒

「難しそうですが初心者でもできますか?」

先生

「基本から順番に覚えれば大丈夫です。簡単な画面から一緒に作ってみましょう。」

1. Tkinterとは?PythonでGUIを作る基本

1. Tkinterとは?PythonでGUIを作る基本
1. Tkinterとは?PythonでGUIを作る基本

PythonでGUIアプリを作るときに使う代表的なライブラリがTkinterです。GUIとは画面を見ながら操作できるアプリのことで、ボタンや入力欄などを使います。

例えば電卓やメモ帳のようなアプリがGUIです。Tkinterを使うことで、これらをPythonだけで簡単に作れるようになります。

2. Tkinterの基本構造を理解しよう

2. Tkinterの基本構造を理解しよう
2. Tkinterの基本構造を理解しよう

GUIアプリは「画面を作る」「部品を置く」「動きをつける」という流れで作ります。最初にウィンドウという画面を作り、その中にボタンなどを配置します。

ウィンドウはアプリの土台のようなもので、すべての部品はこの中に配置されます。


import tkinter as tk

root = tk.Tk()
root.title("はじめてのGUIアプリ")
root.geometry("300x200")

root.mainloop()

このコードでシンプルなウィンドウが表示されます。mainloopは画面を表示し続けるための命令です。

3. ボタンを配置してみよう

3. ボタンを配置してみよう
3. ボタンを配置してみよう

次にボタンを追加してみます。ボタンはクリックできる部品で、押されたときに処理を実行できます。


import tkinter as tk

root = tk.Tk()

button = tk.Button(root, text="クリック")
button.pack()

root.mainloop()

packは部品を画面に配置するための命令です。とても簡単にボタンを表示できます。

4. ボタンに動きをつける方法

4. ボタンに動きをつける方法
4. ボタンに動きをつける方法

GUIの面白さは操作に反応することです。ボタンを押したときにメッセージを表示してみましょう。


import tkinter as tk

def click():
    print("ボタンが押されました")

root = tk.Tk()

button = tk.Button(root, text="押してね", command=click)
button.pack()

root.mainloop()

commandに関数を指定すると、クリックしたときに処理が実行されます。

5. ラベルで文字を表示する

5. ラベルで文字を表示する
5. ラベルで文字を表示する

ラベルは画面に文字を表示するための部品です。説明文や結果表示に使われます。


import tkinter as tk

root = tk.Tk()

label = tk.Label(root, text="こんにちは")
label.pack()

root.mainloop()

ラベルは画面に固定の文字を表示したいときに便利です。

6. 入力欄を使ってユーザー入力を受け取る

6. 入力欄を使ってユーザー入力を受け取る
6. 入力欄を使ってユーザー入力を受け取る

ユーザーが文字を入力できる部品が入力欄です。フォームのように使えます。


import tkinter as tk

root = tk.Tk()

entry = tk.Entry(root)
entry.pack()

root.mainloop()

入力された内容はプログラムから取得できるため、検索や計算などに使えます。

7. 入力内容を取得して表示する

7. 入力内容を取得して表示する
7. 入力内容を取得して表示する

入力欄の値を取得して、画面に表示してみましょう。ユーザーとやり取りする基本的な仕組みです。


import tkinter as tk

def show_text():
    text = entry.get()
    label.config(text=text)

root = tk.Tk()

entry = tk.Entry(root)
entry.pack()

button = tk.Button(root, text="表示", command=show_text)
button.pack()

label = tk.Label(root, text="")
label.pack()

root.mainloop()

入力した文字がそのまま画面に表示されます。これがGUIアプリの基本的な動きです。

8. レイアウトの基本を理解しよう

8. レイアウトの基本を理解しよう
8. レイアウトの基本を理解しよう

部品の配置方法にはいくつか種類があります。今回使ったpackは上から順番に並べる方法です。

他にも位置を細かく指定できる方法がありますが、まずはpackを覚えるだけで十分です。シンプルなアプリはこれだけで作れます。

画面設計は家の間取りのようなもので、どこに何を置くかを考えることが重要です。

まとめ

まとめ
まとめ

TkinterでGUIアプリ開発の基礎をしっかり理解しよう

本記事では、PythonでGUIアプリを作る方法として、Tkinterの基本を初心者向けに丁寧に解説しました。GUIアプリ開発は一見難しそうに感じますが、実際には「画面を作る」「部品を配置する」「動きをつける」というシンプルな流れで構成されています。PythonとTkinterを組み合わせることで、誰でも簡単にデスクトップアプリケーションを作成できるようになります。

まず、Tkinterとは何かを理解し、ウィンドウの作成方法を学びました。Tk()を使ってアプリの土台となる画面を作り、titlegeometryで見た目を整えます。この基本構造を理解することが、GUI開発の第一歩です。

次に、ボタンやラベル、入力欄といった基本的なウィジェットの使い方を学びました。これらの部品はGUIアプリの中心的な要素であり、ユーザーとのやり取りを実現するために欠かせません。特に、Buttoncommandを設定することで、クリック時の処理を実装できる点は重要なポイントです。

また、Entryを使ってユーザー入力を受け取り、その内容をLabelに表示する処理を通じて、インタラクティブなアプリの基本を体験しました。このような仕組みを応用すれば、ログイン画面や検索機能、簡単なツールなど、さまざまな実用的なアプリを開発できます。

レイアウトについても触れ、packを使ったシンプルな配置方法を学びました。GUIの見た目や使いやすさは配置によって大きく変わるため、今後はgridplaceといった配置方法にも挑戦すると、より高度なUI設計が可能になります。

サンプルプログラムで復習しよう


import tkinter as tk

def on_click():
    text = entry.get()
    label.config(text="入力された内容:" + text)

root = tk.Tk()
root.title("まとめアプリ")
root.geometry("300x200")

entry = tk.Entry(root)
entry.pack()

button = tk.Button(root, text="確認", command=on_click)
button.pack()

label = tk.Label(root, text="")
label.pack()

root.mainloop()

上記のサンプルコードでは、入力欄に入力した文字をボタン押下で取得し、ラベルに表示するシンプルなGUIアプリを作成しています。Tkinterの基本機能がすべて含まれており、初心者が復習するのに最適な構成です。

応用に向けたステップアップのポイント

Tkinterの基礎を理解したら、次は応用に挑戦してみましょう。例えば、複数の画面を切り替える機能や、ファイルの読み書き、データベースとの連携などを組み合わせることで、より実践的なアプリケーションを作ることができます。Pythonの標準ライブラリだけでも多くの機能が実現できるため、まずは小さなアプリをたくさん作ることが上達への近道です。

また、GUIアプリ開発ではユーザー体験も重要です。ボタンの配置や文字の見やすさ、操作のしやすさなどを意識することで、より使いやすいアプリを作ることができます。デザインと機能のバランスを考えながら開発することが大切です。

先生と生徒の振り返り会話

生徒

「Tkinterを使うと、Pythonでも簡単に画面付きのアプリが作れるんですね。」

先生

「その通りです。ウィンドウを作って、ボタンや入力欄を配置するだけで、すぐに動くアプリが作れます。」

生徒

「ボタンを押したときに処理を実行するのが面白かったです。commandの仕組みが重要ですね。」

先生

「はい、その部分がGUIの核になります。ユーザーの操作に応じて処理が動くのがGUIの特徴です。」

生徒

「入力欄の内容を取得して表示するのも分かりやすかったです。実際のアプリに近い感じがしました。」

先生

「とても良い理解です。その仕組みを応用すれば、ログイン機能や検索機能も作れるようになります。」

生徒

「これからはもっと複雑なレイアウトや機能にも挑戦してみたいです。」

先生

「ぜひ挑戦してください。小さなアプリを積み重ねることで、自然とスキルが身についていきます。」

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

関連記事:
Python のGUIプログラミングの記事一覧へ
新着記事
New1
Python
Pythonの整数と浮動小数点数の違いとは?数値型の基本を解説
New2
Python
Pythonで文字列をリストに変換する方法!split()とjoin()の使い方
New3
Python
Pythonのbreakとcontinueの違いとは?ループの制御方法をマスター
New4
Python
Pythonのstartswith()・endswith()の使い方!文字列の前後をチェック
人気記事
No.1
Java&Spring記事人気No1
PHP
PHPの特殊文字とエスケープ処理を完全ガイド!初心者向けにhtmlspecialcharsとhtmlentitiesをやさしく解説
No.2
Java&Spring記事人気No2
PHP
PHP の文字列のフォーマット(sprintf, printf)
No.3
Java&Spring記事人気No3
Python
Pythonで文字列を置換する方法!replace()の使い方と正規表現の活用
No.4
Java&Spring記事人気No4
Python
Pythonでリストを分割する方法(スライス / split() / itertools)
No.5
Java&Spring記事人気No5
Python
Pythonのクロージャー(Closure)とは?関数内関数とnonlocalの活用
No.6
Java&Spring記事人気No6
Python
Pythonで経過時間を測る方法をやさしく解説!初心者向けtime.perf_counterとtime.sleepの使い方
No.7
Java&Spring記事人気No7
Python
Pythonのstartswith()・endswith()の使い方!文字列の前後をチェック
No.8
Java&Spring記事人気No8
PHP
PHPの認証機能を実装する方法!初心者でもわかるログイン・ログアウト処理の基本