tkinter.messagebox --- اعلان‌های پیام Tkinter

کد منبع: Lib/tkinter/messagebox.py


ماژول tkinter.messagebox یک کلاس پایه‌ی الگویی و همچنین مجموعه‌ای از متدهای سهولت‌بخش برای پیکربندی‌های رایج را فراهم می‌کند. جعبه‌های پیام مودال (modal) هستند: هر کدام تا زمانی که کاربر پاسخ دهد مسدود می‌شود، سپس مقداری را برمی‌گرداند که به تابع بستگی دارد. توابع show* و Message.show() نام نمادین دکمه‌ای را که کاربر فشار داده است، به‌صورت یک رشته برمی‌گردانند (مانند OK یا YES). سبک‌ها و چیدمان‌های رایج جعبه‌های پیام شامل موارد زیر هستند، اما به آن‌ها محدود نمی‌شوند:

../_images/tk_msg.png
class tkinter.messagebox.Message(master=None, **options)

ایجاد یک پنجره پیام با پیام تعیین‌شده توسط برنامه، یک آیکون و مجموعه‌ای از دکمه‌ها. هر یک از دکمه‌های موجود در پنجره پیام با یک نام نمادین یکتا شناسایی می‌شود (گزینه‌های type را ببینید).

از گزینه‌های زیر پشتیبانی می‌شود:

command

تابعی را که هنگام بستن دیالوگ توسط کاربر فراخوانی می‌شود، مشخص می‌کند. نام دکمه‌ای که کاربر برای بستن دیالوگ روی آن کلیک کرده است، به‌عنوان آرگومان ارسال می‌شود. این مورد فقط در macOS در دسترس است.

default

نام نمادین دکمه پیش‌فرض این پنجره پیام را می‌دهد (OK، CANCEL، و غیره). اگر این گزینه تعیین‌نشده باشد، اولین دکمه در محاوره به‌عنوان پیش‌فرض قرار می‌گیرد.

detail

یک پیام کمکی برای پیام اصلی داده‌شده با گزینه message مشخص می‌کند. جزئیات پیام زیر پیام اصلی نمایش داده می‌شود و، در صورت پشتیبانی سیستم‌عامل، با قلمی با تأکید کمتر از پیام اصلی.

icon

یک آیکون را برای نمایش مشخص می‌کند. اگر این گزینه مشخص نشده باشد، آیکون INFO نمایش داده می‌شود.

message

پیامی را که باید در این جعبه پیام نمایش داده شود، مشخص می‌کند. مقدار پیش‌فرض یک رشته خالی است.

parent

پنجره‌ی مشخص‌شده را به‌عنوان والد منطقی جعبه پیام قرار می‌دهد. جعبه پیام روی پنجره‌ی والد خود نمایش داده می‌شود.

title

رشته‌ای را برای نمایش به‌عنوان عنوان جعبه‌ی پیام مشخص می‌کند. این گزینه در macOS نادیده گرفته می‌شود، زیرا دستورالعمل‌های پلتفرم استفاده از عنوان را برای این نوع پنجره‌ی محاوره‌ای ممنوع می‌کنند.

type

ترتیبی می‌دهد که مجموعه‌ای از دکمه‌های از پیش تعریف‌شده نمایش داده شود.

توجه

Tk 8.6 گزینه‌ی command را افزود.

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'