【スポンサーリンク】
messageboxの概要
messageboxは以下の表に示す8種類のメソッドが準備されている。メッセージの表示のみ(show)が3種類、メッセージの表示+質問(ask)が5種類となっている。askの場合は選択した項目に応じた戻り値が用意されている。
Messagebox | 画像 | 戻り値 | showinfo |
|
ok |
---|---|---|
showwarning |
|
ok |
showerror |
|
ok |
askquestion |
|
yes / no |
askokcancel |
|
True / False (bool) |
askyesno |
|
True / False (bool) |
askyesnocancel |
|
True / False / None (bool) |
askretrycancel |
|
True / False (bool) |
【スポンサーリンク】
messageboxの使い方
messagebox使用時は、tkinter内のmessageboxモジュールをインポートしておく必要がある。また、各メッセージボックスを生成する際に、タイトルとメッセージを設定することができる。以下、例を示す。
from tkinter import messagebox ans = messagebox.askyesnocancel("タイトル", "メッセージ") print(ans)
実行すると以下のメッセージボックスが表示され、選択した項目に合わせた戻り値が表示される。
【スポンサーリンク】
応用例(ボタンとラベルの組み合わせ)
ボタンクリックでメッセージボックスを呼び出し、選択結果をラベルに表示させる例を示す。
import tkinter from tkinter import messagebox #ボタンクリック時に実行する関数 def show_message(): ans = messagebox.askyesnocancel("title","message") var.set(ans) root = tkinter.Tk() #選択結果格納用変数 var = tkinter.StringVar() #表示用ラベル l = tkinter.Label( root, relief="ridge", width=15, textvariable=var, #varを設定 ) l.pack() #ボタン b = tkinter.Button( root, width=15, text="message", command=show_message, #クリック時に実行する関数 ) b.pack() root.mainloop()
実行するとラベルとボタンが表示され、ボタンをクリックするとメッセージボックスが出現する。
【スポンサーリンク】