messageboxを使ってみよう
tkinter.messageboxを使うと、インフォメーションやワーニング、エラーのポップアップ画面を簡単に作成できます。
今回はmessageboxの具体的な使い方をみていきましょう。
messageboxのインポート
messageboxのメソッドを使うには、tkinter.messageboxをインポートする必要があります。
import tkinter.messagebox
messageboxの書式
messageboxには、以下のメソッドがあります。
画面の構成は、それぞれのメソッドの実行例を参照してください。
メモ
messageboxを表示するとdialogと同じように親ウィンドウが表示されます。
非表示にするやり方は、前回の記事を参照してください。
インフォメーションボックス
書式 | tkinter.messagebox.showinfo(title=タイトル, message=メッセージ [, オプション]) |
表示ボタン | OK |
戻り値 | 'ok' |
実行例
>>> tkinter.messagebox.showinfo(title="タイトル", message="こんにちは!")
ワーニングメッセージボックス
書式 | tkinter.messagebox.showwarning(title=タイトル, message=メッセージ [, オプション]) |
表示ボタン | OK |
戻り値 | 'ok' |
実行例
>>> tkinter.messagebox.showwarning(title="タイトル", message="ワーニングです!")
書式 | tkinter.messagebox.showerror(title=タイトル, message=メッセージ [, オプション]) |
表示ボタン | OK |
戻り値 | 'ok' |
実行例
>>> tkinter.messagebox.showerror(title="タイトル", message="エラーです!")
クエスチョンメッセージボックス
書式 | tkinter.messagebox.askquestion(title=タイトル, message=メッセージ [, オプション]) |
表示ボタン | はい/いいえ |
戻り値 | 'yes'/'no' |
実行例
>>> tkinter.messagebox.askquestion(title="タイトル", message="よろしいですか?")
書式 | tkinter.messagebox.askokcancel(title=タイトル, message=メッセージ [, オプション]) |
表示ボタン | OK/キャンセル |
戻り値 | True/False |
実行例
>>> tkinter.messagebox.askokcancel(title="タイトル", message="よろしいですか?")
書式 | tkinter.messagebox.askretrycancel(title=タイトル, message=メッセージ [, オプション]) |
表示ボタン | 再試行/キャンセル |
戻り値 | True/False |
実行例
>>> tkinter.messagebox.askretrycancel(title="タイトル", message="もう一度実行しますか?")
書式 | tkinter.messagebox.askyesno(title=タイトル, message=メッセージ [, オプション]) |
表示ボタン | はい/いいえ |
戻り値 | True/False |
実行例
>>> tkinter.messagebox.askyesno(title="タイトル", message="よろしいですか?")
書式 | tkinter.messagebox.askyesnocancel(title=タイトル, message=メッセージ [, オプション]) |
表示ボタン | はい/いいえ/キャンセル |
戻り値 | True/False/なし ※キャンセルを押下した場合、戻り値はなし |
実行例
>>> tkinter.messagebox.askyesnocancel(title="タイトル", message="よろしいですか?")
共通オプション
オプションは全てのメソッド共通で、iconとtypeが指定できます。
iconはメッセージボックスに表示されるマークの種類で、"info"、"warning"、"error"、"question"を指定できます。
typeはメッセージボックスに表示されるボタンの種類で、"ok"、"okcancel"、"yesno"、"yesnocancel"、"retrycancel"、"abortretryignore"を指定できます。
iconオプション
icon="info"のように指定すると、メッセージボックスのアイコンを変更することができます。
iconの種類は、以下の通りです。
値 | アイコン |
info | |
warning | |
error | |
question |
typeオプション
type="ok"のように指定すると、メッセージボックスのボタンを変更することができます。
typeの種類は、以下の通りです。
なお、typeオプションを使う場合は、showinfo()、showewarning()、showerror()の各メソッドを使用してください。
ask系のメソッドでは、戻り値が想定通りに返ってきません。
値 | 表示ボタン | 戻り値 |
ok | 'ok' | |
okcancel | 'ok'/'cancel' | |
yesno | 'yes'/'no' | |
yesnocancel | 'yes'/'no'/'cancel' | |
retrycancel | 'retry'/'cancel' | |
abortretryignore | 'abort'/'retry'/'ignore' |
オプションを使ったサンプル
オプションのiconとtypeを使った実行例は、以下のようになります。
またオプションは"(ダブルクォーテーション)、または'(シングルクォーテーション)で囲む必要があります。
実行例
tkinter.messagebox.showinfo(title="異常", message="処理が異常終了しました", icon="error", type="abortretryignore")