【tkinter标准对话框】messagebox:信息传递,消息对话框!

在这里插入图片描述

文章目录

  • 一、messagebox简介
  • 二、运用实例
  • 三、参数&返回值
    • 1. 参数
    • 2. 返回值


一、messagebox简介

在tkinter中有三种标准对话框:

  • messagebox
  • filedialog
  • colorchooser

首先,来了解一下 messagebox 消息对话框

消息对话框,总体来说分为两种,一是消息框,二是对话框。

消息框,主要用来提示用户相应的信息,用户知道即可;对话框,告诉用户信息的同时,需要用户选择做出下一步行动,有一个交互的过程。

我们梳理一下各种类型的消息对话框以及对应的样子。

——

三个消息框

1、消息提示框 showinfo(title, message, options)
【tkinter标准对话框】messagebox:信息传递,消息对话框!_第1张图片
2、消息警告框 showwarning(title, message, options)
【tkinter标准对话框】messagebox:信息传递,消息对话框!_第2张图片
3、错误消息框 showerror(title, message, options)
【tkinter标准对话框】messagebox:信息传递,消息对话框!_第3张图片
五个对话框

1、询问确认对话框 askquestion(title, message, options)
【tkinter标准对话框】messagebox:信息传递,消息对话框!_第4张图片
2、确认/取消对话框 askokcancel(title, message, options)
【tkinter标准对话框】messagebox:信息传递,消息对话框!_第5张图片
3、是/否对话框 askyesno(title, message, options)
【tkinter标准对话框】messagebox:信息传递,消息对话框!_第6张图片
4、重试/取消对话框 askretrycancel(title, message, options)
【tkinter标准对话框】messagebox:信息传递,消息对话框!_第7张图片
5、是/否/取消对话框 askyesnocancel(title, message, options)
【tkinter标准对话框】messagebox:信息传递,消息对话框!_第8张图片
在这里插入图片描述

二、运用实例

下面我们通过实际代码,来看看各个对话框的使用。

import tkinter as tk
from tkinter.messagebox import *

root = tk.Tk()

def cmx1():
	mx1 = showinfo(title='消息提示框', message='您的车速有点快!请慢点!')

def cmx2():
	mx2 = showwarning(title='消息警告框', message='警告!您的车速太快,即将违法!')

def cmx3():
	mx3 = showerror(title='错误消息框', message='您输入的信息不合法!')

def cmx4():
	mx4 = askquestion(title='询问确认对话框',message='喝酒请不要乱开车!')

def cmx5():
	mx5 = askokcancel(title='确认/取消对话框', message='请注意车速不要太快!')

def cmx6():
	mx6 = askyesno(title='是/否对话框', message='请问是否要将车门焊死?')

def cmx7():
	mx7 = askretrycancel(title='重试/取消对话框', message='开车偏离轨道,是否重开?')

def cmx8():
	mx8 = askyesnocancel(title='是/否/取消对话框', message='您是否拥有老司机资格证?')

tk.Button(root, text='消息提示框', command=cmx1).pack(padx=10,pady=5, anchor='w')
tk.Button(root, text='消息警告框', command=cmx2).pack(padx=10,pady=5, anchor='w')
tk.Button(root, text='错误消息框', command=cmx3).pack(padx=10,pady=5, anchor='w')
tk.Button(root, text='询问确认对话框', command=cmx4).pack(padx=10,pady=5, anchor='w')
tk.Button(root, text='确认/取消对话框', command=cmx5).pack(padx=10,pady=5, anchor='w')
tk.Button(root, text='是/否对话框', command=cmx6).pack(padx=10,pady=5, anchor='w')
tk.Button(root, text='重试/取消对话框', command=cmx7).pack(padx=10,pady=5, anchor='w')
tk.Button(root, text='是/否/取消对话框', command=cmx8).pack(padx=10,pady=5, anchor='w')

root.mainloop()

运行程序来看一下。


messagebox 本身没有太大的难度,共计3个消息框和5个对话框,只需要根据自己的需要选择适合的消息对话框即可。
在这里插入图片描述

三、参数&返回值

——

1. 参数

所有类型的消息对话框都具有相同的参数。

参数 用法
title 设置消息对话框的标题文本
message 设置消息对话框的主要文本内容,可用’\n’实现换行
default 1. 设置默认的按钮(也就是按下回车响应的那个按钮);2. 默认是第一个按钮(像“确定”,“是”或“重试”);3. 可以设置的值根据对话框函数的不同可以选择:CANCEL,IGNORE,OK,NO,RETRY 或 YES
icon 1. 指定对话框显示的图标;2. 可以指定的值有:ERROR,INFO,QUESTION 或 WARNING;3. 注意:不能指定自己的图标
parent 1. 如果不指定该选项,那么对话框默认显示在根窗口上;2. 如果想要将对话框显示在子窗口 w 上,那么可以设置 parent=w

——

2. 返回值

showerror(),showinfo() 和 showwarning() 返回“ok”表示用户按下了“确定”按钮。

askquestion() 返回“yes”或“no”字符串表示用户点击了“是”或“否”按钮。

askokcancel(),askretrycancel() 和 askyesno() 返回布尔类型的值:

  • 用户点击了“确定”或“是”按钮,则返回 True
  • 用户点击了“取消”或“否”按钮,则返回 False

在这里插入图片描述在这里插入图片描述

你可能感兴趣的:(tkinter探索之旅,python,tkinter,标准对话框)