【Python tkinter】メッセージボックスを表示するメソッド一覧(messagebox)
2021.02.13 /

本記事ではPythonのtkinterによる、メッセージボックス(messagebox)を表示するメソッドについて解説していきます。
tkinterはPythonに標準で用意されているGUIアプリケーションを作成するためのライブラリです。
tkinterの基本的な使用方法は以下記事をご参照ください。

【Python】tkinterを使ったGUIアプリケーションの作成方法
GUIアプリケーションを作成する上でメッセージボックスは、ユーザーに情報を与えたり、注意を促したり、エラーについて知らせるためなどに使用されます。
このようにメッセージボックスは用途によって使い分ける必要があり、メッセージボックスを表示するメソッドはいくつかあります。
本記事でメッセージボックスを表示するメソッドをすべて学びましょう。
messageboxモジュール
tkinterでメッセージボックスを表示するには、messageboxモジュールを使用します。
messageboxモジュールにはメッセージボックスを表示する様々なメソッドが用意されています。
メッセージボックスはモーダルであり、ユーザーの選択によって返り値に「True、False、OK、None、Yes、No」を返します。
メッセージボックスには4種類のメッセージがあり、用途によって使い分けます。
- Informationメッセージ
- Warningメッセージ
- Questionメッセージ
- Errorメッセージ
Informationメッセージボックス
showinfoメソッド
showinfoメソッドはinformation情報を表示するためのメッセージボックスを表示します。
tkinter.messagebox.showinfo(title=タイトル, message=メッセージ)
次のサンプルプログラムで表示されるinformationメッセージボックスを表示させます。
# tkinterのインポート
import tkinter
tkinter.messagebox.showinfo(title="information", message="information")

informationメッセージボックスによる返り値は”ok”です。
Warningメッセージボックス
showwarningメソッド
showwarningメソッドはwarning情報を表示するためのメッセージボックスを表示します。
このメソッドでは「OK」ボタンのみが選択可能です。
tkinter.messagebox.showwaring(title=タイトル, message=メッセージ)
次のサンプルプログラムで表示されるwarningメッセージボックスを表示させます。
# tkinterのインポート
import tkinter
tkinter.messagebox.showwarning(title="showarning", message="showarning")

warningメッセージボックスによる返り値は”ok”です。
askretrycancelメソッド
askretrycancelメソッドはwarning情報を表示するためのメッセージボックスを表示します。
このメソッドでは「再試行」、「キャンセル」ボタンが選択可能です。
tkinter.messagebox.askretrycancel(title=タイトル, message=メッセージ)
次のサンプルプログラムで表示されるretrycancelメッセージボックスを表示させます。
# tkinterのインポート
import tkinter
tkinter.messagebox.askretrycancel(title="askretrycancel", message="askretrycancel")

retrycancelメッセージボックスによる返り値は”True”または”False”です。
Questionメッセージボックス
askquestionメソッド
askquestionメソッドはユーザーに問いかけるメッセージボックスを表示します。
このメソッドでは「はい」、「いいえ」ボタンが選択可能です。
tkinter.messagebox.askquestion(title=タイトル, message=メッセージ)
次のサンプルプログラムで表示されるaskquestionメッセージボックスを表示させます。
# tkinterのインポート
import tkinter
tkinter.messagebox.askquestion(title="askquestion", message="askquestion")

askquestionメッセージボックスによる返り値は”yes”または”no”です。
askokcancelメソッド
askokcancelメソッドはユーザーに問いかけるメッセージボックスを表示します。
このメソッドでは「OK」、「キャンセル」ボタンが選択可能です。
tkinter.messagebox.askokcancel(title=タイトル, message=メッセージ)
次のサンプルプログラムで表示されるaskokcancelメッセージボックスを表示させます。
# tkinterのインポート
import tkinter
tkinter.messagebox.askokcancel(title="askokcancel", message="askokcancel")

askokcancelメッセージボックスによる返り値は”True”または”False”です。
askyesnoメソッド
askyesnoメソッドはユーザーに問いかけるメッセージボックスを表示します。
このメソッドでは「はい」、「いいえ」ボタンが選択可能です。
tkinter.messagebox.askyesno(title=タイトル, message=メッセージ)
次のサンプルプログラムで表示されるaskyesnoメッセージボックスを表示させます。
# tkinterのインポート
import tkinter
tkinter.messagebox.askyesno(title="askyesno", message="askyesno")

askyesnoメッセージボックスによる返り値は”True”または”False”です。
askyesnocancelメソッド
askyesnocancelメソッドはユーザーに問いかけるメッセージボックスを表示します。
このメソッドでは「はい」、「いいえ」、「キャンセル」ボタンが選択可能です。
tkinter.messagebox.askyesnocancel(title=タイトル, message=メッセージ)
次のサンプルプログラムで表示されるaskyesnocancelメッセージボックスを表示させます。
# tkinterのインポート
import tkinter
tkinter.messagebox.askyesnocancel(title="askyesnocancel", message="askyesnocancel")

askyesnocancelメッセージボックスによる返り値は”True”または”False”、”None”です。
Errorメッセージボックス
showerrorメソッド
showerrorメソッドはエラーメッセージボックスを表示します。
このメソッドでは「OK」ボタンのみが選択可能です。
tkinter.messagebox.showerror(title=タイトル, message=メッセージ)
次のサンプルプログラムで表示されるerrorメッセージボックスを表示させます。
# tkinterのインポート
import tkinter
tkinter.messagebox.showerror(title="showerror", message="showerror")

showerrorメッセージボックスによる返り値は”ok”です。
まとめ
本記事「【Python tkinter】メッセージボックスを表示するメソッド一覧(messagebox)」はいかがでしたか。
messageboxモジュールを使いこなして、ユーザーに使いやすいGUIアプリケーションを作成してください。