PythonでGUIのボタンを作成する方法を現役エンジニアが解説【初心者向け】

初心者向けにPythonでGUIのボタンを作成する方法について現役エンジニアが解説しています。Tkinterを使います。TkinterとはPythonに標準搭載されているGUIフレームワークです。GUIアプリケーション、ウィンドウアプリケーションを作成することが出来ます。今回はウィンドウやボタンを作成してみます。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

PythonでGUIのボタンを作成する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して、初心者向けに解説します。

 

Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、Python講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

PythonでGUIのボタンを作成する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

Tkinterとは

Tkinterとは、Pythonに標準搭載されているGUIフレームワークです。

GUIとはアプリケーションの操作画面など視覚的に操作ができるアプリケーションウィンドウのことを指します。

Tkinterを使用すると、テキストボックスやボタン等を搭載したアプリケーションウィンドウを表示してプログラムを操作するといった、より本格的なアプリケーション開発ができます。
 

ボタンを表示してみよう

それでは以下のサンプルコードを参考にTkinterを使ってボタンを表示するウィンドウを作成してみましょう。
 

サンプルコード

import tkinter

# 画面作成
tki = tkinter.Tk()
tki.geometry('300x200') # 画面サイズの設定
tki.title('ボタンのサンプル') # 画面タイトルの設定

# ボタンの作成
btn = tkinter.Button(tki, text='ボタン') # ボタンの設定(text=ボタンに表示するテキスト)
btn.place(x=130, y=80) #ボタンを配置する位置の設定

# 画面をそのまま表示
tki.mainloop()

 

実行結果

PythonでGUIが作成できるTkinterでボタンウィンドウを作成する方法
 

解説

Tkinterの各種設定はサンプルコード内にコメントを記述しているのでそちらをご確認ください。

コード9-10行目ではボタンの設定をしています。

コード13行目の”tki.mainloop()”は画面を常に表示し続ける為に必要な記述となりますので入力忘れに注意してください。

実行するとボタンのサンプルというウィンドウが真ん中にボタンが設置された状態で表示される事が確認できます。
 

[PR] Pythonで挫折しない学習方法を動画で公開中

ボタンが押された時の処理を実装してみよう

ボタンが押された時の処理を実装する場合は、ボタンの設定をしているコードの引数にcommand=”処理”を追加します。

それでは先ほど作成したサンプルコードにボタンが押された時のメッセージボックスを表示する処理を実装してみましょう。

メッセージボックスは下記文法で使用することができます。

massagebox.showinfo(タイトル,内容)

 

サンプルコード

import tkinter
from tkinter import messagebox

# click時のイベント
def btn_click():
  messagebox.showinfo("メッセージ", "ボタンがクリックされました")

# 画面作成
tki = tkinter.Tk()
tki.geometry('300x200') # 画面サイズの設定
tki.title('ボタンのサンプル') # 画面タイトルの設定

# ボタンの作成
btn = tkinter.Button(tki, text='ボタン', command = btn_click)
btn.place(x=130, y=80) #ボタンを配置する位置の設定

# 画面をそのまま表示
tki.mainloop()

 

実行結果

PythonでGUIが作成できるTkinterでボタンをクリックした場合の処理を実装したサンプルプログラム
 

解説

コード14行目でtkinter.Button(tki, text=’ボタン’, command = btn_click)とボタンがクリックされた時に”btn_click”が呼び出されるように設定しています。
クリック時の”btn_clic”は関数として定義しておりコード5-6行目になります。

この関数のなかでメッセージボックスを表示する処理を設定しています。

ボタンをクリックすると実行結果のようなメッセージボックスの表示を確認できます。
 

まとめ

今回はPythonでGUIのボタンを作成する方法について紹介しました。

作成したプログラムをGUIアプリケーションする事でより開発の幅が広がると思います。

Tkinterにはボタン以外にもテキストボックス、チェックボックス、ラジオボタンなど様々なパーツを配置する事が出来るので気になる方はそちらも学習してみることをオススメします。
 

監修してくれたメンター

菅繕久(すがよしひこ)

現在はフリーランスのエンジニアをしていてプログラミング歴は8年目になります。

普段は Python、FileMaker等を使って様々な業務で活用できるIoTプロダクトRPAツールを作成しています。
開発実績としては、業務自動化ツール(在庫管理・発注・ファイル操作 etc)、電子カルテシステム、ロボット用プログラムなどがあります。
TechAcademyではPythonコースを担当しております。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間で、Pythonを使った人工知能(AI)や機械学習の基礎を習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。