tkinter.messagebox
--- Tkinter 訊息提示
原始碼:Lib/tkinter/messagebox.py
tkinter.messagebox
模組提供了模板基底類別以及各種常用配置的便捷方法。訊息框 (message box) 是互動視窗 (modal),會基於使用者的選擇回傳(True
、False
、None
、OK
、CANCEL
、YES
、NO
)的子集。常見的訊息框樣式 (style) 和版面配置 (layout) 包括但不限於:
-
class tkinter.messagebox.Message(master=None, **options)
建立一個訊息視窗,其中包含應用程式指定的訊息、一個圖示和一組按鈕。訊息視窗中的每個按鈕都有唯一的符號名稱作為識別(請參考 type 選項)。
支援以下選項:
- command
指定當使用者關閉對話框 (dialog) 時要呼叫的函式。使用者按一下以關閉對話框的按鈕的名稱作為引數傳遞。此選項僅適用於 macOS。
- default
給出此訊息視窗的預設按鈕的符號名稱(OK
、CANCEL
等)。如果未指定此選項,則對話框中的第一個按鈕將成為預設按鈕。
- detail
透過 message 選項指定將輔助訊息給主訊息。訊息詳細資訊將顯示在主要訊息下方,並且在作業系統支援的情況下,將以比主要訊息更不強調的字體顯示。
- icon
指定要顯示的圖示。如果未指定此選項,則會顯示 INFO
圖示。
- message
指定要在此訊息框中顯示的訊息。預設值為空字串。
- parent
使指定視窗成為訊息框的邏輯父視窗 (logical parent window)。訊息框顯示在其父視窗的頂部。
- title
指定顯示為訊息框標題的字串。此選項在 macOS 上被忽略,其平台指南禁止在此類對話方塊上使用標題。
- type
安排一組需顯示的預先定義的按鈕組合。
-
show(**options)
顯示訊息視窗並等待使用者選擇其中一個按鈕。然後回傳所選按鈕的符號名稱。關鍵字引數可以覆寫建構函式中指定的選項。
資訊訊息框
-
tkinter.messagebox.showinfo(title=None, message=None, **options)
建立並顯示具有指定標題和訊息的資訊訊息框。
警告訊息框
-
tkinter.messagebox.showwarning(title=None, message=None, **options)
建立並顯示具有指定標題和訊息的警告訊息框。
-
tkinter.messagebox.showerror(title=None, message=None, **options)
建立並顯示具有指定標題和訊息的錯誤訊息框。
問題留言框
-
tkinter.messagebox.askquestion(title=None, message=None, *, type=YESNO, **options)
問一個問題。預設顯示按鈕 YES
和 NO
。回傳所選按鈕的符號名稱。
-
tkinter.messagebox.askokcancel(title=None, message=None, **options)
詢問操作是否應該繼續。顯示按鈕 OK
和 CANCEL
。如果答案正確則傳回 True
,否則回傳 False
。
-
tkinter.messagebox.askretrycancel(title=None, message=None, **options)
詢問是否應重試操作。顯示按鈕 RETRY
和 CANCEL
。如果答案為是,則回傳 True
,否則回傳 False
。
-
tkinter.messagebox.askyesno(title=None, message=None, **options)
問一個問題。顯示按鈕 YES
和 NO
。如果答案為是,則回傳 True
,否則回傳 False
。
-
tkinter.messagebox.askyesnocancel(title=None, message=None, **options)
問一個問題。顯示按鈕 YES
、NO
和 CANCEL
。如果答案為是,則回傳 True
;如果取消則回傳 None
,否則回傳 False
。
按鈕的符號名稱:
-
tkinter.messagebox.ABORT = 'abort'
-
tkinter.messagebox.RETRY = 'retry'
-
tkinter.messagebox.IGNORE = 'ignore'
-
tkinter.messagebox.OK = 'ok'
-
tkinter.messagebox.CANCEL = 'cancel'
-
tkinter.messagebox.YES = 'yes'
-
tkinter.messagebox.NO = 'no'
預先定義的按鈕組合:
-
tkinter.messagebox.ABORTRETRYIGNORE = 'abortretryignore'
顯示三個按鈕,其符號名稱為 ABORT
、RETRY
和 IGNORE
。
-
tkinter.messagebox.OK = 'ok'
顯示一個按鈕,其符號名稱為 OK
。
-
tkinter.messagebox.OKCANCEL = 'okcancel'
顯示兩個按鈕,其符號名稱為 OK
和 CANCEL
。
-
tkinter.messagebox.RETRYCANCEL = 'retrycancel'
顯示兩個按鈕,其符號名稱為 RETRY
和 CANCEL
。
-
tkinter.messagebox.YESNO = 'yesno'
顯示兩個按鈕,其符號名稱為 YES
和 NO
。
-
tkinter.messagebox.YESNOCANCEL = 'yesnocancel'
顯示三個按鈕,其符號名稱為 YES
、NO
和 CANCEL
。
圖示圖像:
-
tkinter.messagebox.ERROR = 'error'
-
tkinter.messagebox.INFO = 'info'
-
tkinter.messagebox.QUESTION = 'question'
-
tkinter.messagebox.WARNING = 'warning'