Python之tkinter Message与Messagebox的基本运用

Message

Message 的基本概念

  Widget 控件中的 Message 主要是可以显示短消息,它的功能与Label类似,但是使用起来更灵活,可自动分行。对于一些不想再做进一步编辑的短文,可以使用 Message 显示。构造方法如下:

Message(父对象, options)
  • 第一个参数:父对象,表示这个标签将建立在哪一个父对象内
  • 第二个参数:options,参数如下
参数含义
anchor如果空间大于所需时,控制消息的位置
默认是CENTER
aspect控件宽度与高度比
默认是150%
bd边界宽度
默认是两个像素
background背景色彩
bg背景色彩
bitmap使用默认位图当做Message内容
cursor当鼠标光标移至按钮上时的形状
foreground前景色彩
fg前景色彩
font字形、字形样式与大小
height高,单位是字符高
imageMessage 以图像方式呈现
justify当有多行文字时,最后一行文字的对齐方式
取值为LEFT/CENTER/RIGHT(靠左/居中/靠右)
默认是居中对齐
padx/padyMessage 文字与边框的间距,单位是像素
relief可由此控制文字外框
默认是relief=FLAT
textMessage 内容,如果有"\n"则可以输入当行文字
textvariable文字变量
underline可以设置第几个文字有下划线,从0开始算起
默认是-1,表示无下划线
width宽,单位是字符宽
wraplength文本在多少宽度后换行,单位是像素
Message 的基本运用

例子

import tkinter

root = tkinter.Tk()
text = "苍茫的天涯是我的爱,绵绵的青山脚下花盛开。什么样的节奏是最呀最开怀。"
message = tkinter.Message(root, bg="lightyellow", text=text, font="times 12 italic")
message.pack(padx=10, pady=10)

root.mainloop()

运行结果:
在这里插入图片描述

使用字符串变量处理 text 参数
import tkinter

root = tkinter.Tk()
var = tkinter.StringVar()
var.set("苍茫的天涯是我的爱,绵绵的青山脚下花盛开。什么样的节奏是最呀最开怀。")
message = tkinter.Message(root, bg="lightyellow", textvariable=var, font="times 12 italic")
message.pack(padx=10, pady=10)

root.mainloop()

运行结果:
在这里插入图片描述

Messagebox

Python 中的tkinter模块内有Messagebox模块,提供了8个对话框,这些对话框可以应用在不同场合

对话框是放在tkinter模块内的message模块下,所以若是要使用这些对话框需要在程序开头增加导入语句

from tkinter import messagebox
消息提示框

显示一般提示消息

语法格式如下:

showinfo(title, message, options)

例子

import tkinter
from tkinter import messagebox

def myMessage():
    messagebox.showinfo("提示", "提醒消息")

root = tkinter.Tk()
tkinter.Button(root, text="点击此", command=myMessage).pack()

root.mainloop()

运行结果:
在这里插入图片描述
在这里插入图片描述

消息警告框

显示警告消息

语法格式如下:

showwarning(title, message, options)

例子

import tkinter
from tkinter import messagebox

def myMessage():
    messagebox.showwarning("警告", "警告消息")

root = tkinter.Tk()
tkinter.Button(root, text="点击此", command=myMessage).pack()

root.mainloop()

运行结果:
在这里插入图片描述
在这里插入图片描述

消息错误框

显示错误消息

语法格式如下:

showerror(title, message, options)

例子

import tkinter
from tkinter import messagebox

def myMessage():
    messagebox.showerror("错误", "错误消息")

root = tkinter.Tk()
tkinter.Button(root, text="点击此", command=myMessage).pack()

root.mainloop()

运行结果:
在这里插入图片描述
在这里插入图片描述

消息对话框
显示询问消息

单击按钮传回yes,单击按钮会传回no

语法格式如下:

askquestion(title, message, options)

例子

import tkinter
from tkinter import messagebox

def myMessage():
    msg = messagebox.askquestion("询问", "确定要离开吗?")
    print(msg)

root = tkinter.Tk()
tkinter.Button(root, text="点击此", command=myMessage).pack()

root.mainloop()

运行结果:
在这里插入图片描述

显示确定或取消消息

单击确定按钮传回True,单击取消按钮会传回False

语法格式如下:

askokcancel(title, message, options)

例子

import tkinter
from tkinter import messagebox

def myMessage():
    msg = messagebox.askokcancel("确定或取消", "确定或者取消?")
    print(msg)

root = tkinter.Tk()
tkinter.Button(root, text="点击此", command=myMessage).pack()

root.mainloop()

运行结果:
在这里插入图片描述

显示是或否消息

单击按钮传回True,单击按钮会传回False

语法格式如下:

askyesno(title, message, options)

例子

import tkinter
from tkinter import messagebox

def myMessage():
    msg = messagebox.askyesno("是或否", "是或否?")
    print(msg)

root = tkinter.Tk()
tkinter.Button(root, text="点击此", command=myMessage).pack()

root.mainloop()

运行结果:
在这里插入图片描述

显示是或否或取消消息

单击按钮传回True,单击按钮会传回False,单击取消按钮会传回None

语法格式如下:

askyesnocancel(title, message, options)

例子

import tkinter
from tkinter import messagebox

def myMessage():
    msg = messagebox.askyesnocancel("是或否或取消", "是或否或取消?")
    print(msg)

root = tkinter.Tk()
tkinter.Button(root, text="点击此", command=myMessage).pack()

root.mainloop()

运行结果:
在这里插入图片描述

显示重试或取消消息

单击重试按钮传回True,单击取消按钮会传回False

语法格式如下:

askretrycancel(title, message, options)

例子

import tkinter
from tkinter import messagebox

def myMessage():
    msg = messagebox.askretrycancel("重试或取消", "重试或取消?")
    print(msg)

root = tkinter.Tk()
tkinter.Button(root, text="点击此", command=myMessage).pack()

root.mainloop()

运行结果:
在这里插入图片描述

参数
  • 第一个参数:title,是对话框的名称
  • 第二个参数:message,是对话框的文字
  • 第三个参数:options,选择性参数,参数如下:
参数含义
default选择默认按钮,也可以更改此设定
值有YES(是)、NO(不是)、CANCEL(取消)、OK(确定)、RETRY(重试)
icon可设定所显示的图标
有INFO、ERROR、 QUESTION、WARNING四种图标可以选择
parent指出当对话框关闭时,焦点窗口将返回此父窗口

例子:default

def myMessage():
    msg = messagebox.askyesnocancel("是或否或取消", "是或否或取消?", default=messagebox.CANCEL)
    print(msg)

运行结果:
在这里插入图片描述

打开此对话框时,默认的选项改为取消

例子:icon

def myMessage():
    msg = messagebox.askyesnocancel("是或否或取消", "是或否或取消?", icon=messagebox.WARNING)
    print(msg)

运行结果:
在这里插入图片描述

打开此对话框时,默认的图标改为警告

如果运用的得体的好,这些都可以自由组合

如果有不清楚的,可以直接CTRL + 鼠标左键单击message进入源代码,源代码可以看得很清楚

谢谢观看,笔者会持续更新,如有错误或者建议,请私信我

  • 19
    点赞
  • 99
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Python tkinter.messagebox是一个Tkinter模块中的子模块,用于创建消息框和对话框,可以用于显示警告、错误、信息和询问等不同类型的消息。它是Python GUI编程中常用的工具之一,可以帮助开发者快速创建交互式界面。 ### 回答2: Python tkinter.messageboxPython Tkinter GUI库中的一个模块,用于在用户界面中显示对话框和消息框。 这个模块提供了一些方法用于显示不同类型的消息框,包括警告框、信息框、错误框、问题框等等。这些消息框可以用于提示用户,或者用于获取用户的确认或反馈。 Python tkinter.messagebox中的一些常用方法包括: - showinfo(title, message):显示一个信息框,包含指定的标题和消息内容。 - showwarning(title, message):显示一个警告框,包含指定的标题和警告消息。 - showerror(title, message):显示一个错误框,包含指定的标题和错误消息。 - askquestion(title, message):显示一个问题框,包含指定的标题和问题消息。用户可以用“是”或“否”回答。 - askyesno(title, message):显示一个问题框,包含指定的标题和问题消息。用户可以用“是”或“否”回答。 使用Python tkinter.messagebox显示消息框非常简单,只需要导入该模块并调用指定的方法即可,例如: ``` from tkinter import messagebox messagebox.showinfo("Hello", "Welcome to Python") ``` 以上代码将显示一个信息框,标题为“Hello”,消息为“Welcome to Python”。 总之,Python tkinter.messagebox是一个方便易用的模块,可以帮助开发者快速在用户界面中显示各种类型的消息框,提高用户体验。 ### 回答3: Python Tkinter是一种用于创建图形用户界面(GUI)的Python标准GUI包。它提供了多种控件和工具来创建美观和易用的GUI界面。Tkinter中的messagebox是一种内置的对话框,可以用于向用户提供信息,警告和错误消息。 messagebox是一个非常方便的工具,可以用于在GUI应用程序中与用户进行交互。使用messagebox可以在GUI应用程序中显示一些文本信息或提示消息,并且还可以为用户提供一些选项,以便他们可以采取不同的操作。 在Python Tkinter中,有多个类型的messagebox可供使用,如:showinfo, showwarning, showerror, askquestion, askokcancel, askyesno, askretrycancel等等。showinfo可以用于显示一些一般性的信息,而showerror则可以用于显示错误信息等。 messagebox的语法非常简单,首先需要将tkinter.messagebox导入到Python文件中,然后使用具体的方法来调用不同类型的消息框。例如,要使用showinfo,可以使用以下代码: import tkinter.messagebox as mbox mbox.showinfo("提示信息", "欢迎使用Python Tkinter") 在这个例子中,标题为“提示信息”的对话框将出现,其中包含“欢迎使用Python Tkinter”的消息。 尽管messageboxPython Tkinter中非常方便,但要注意的是,在用户控制的环境中,弹出对话框可能会干扰用户的工作流程,导致应用程序的响应变慢或停滞。因此,在使用messagebox时应当注意谨慎使用,以确保使用效果最佳。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值