[Python进阶] 消息框、弹窗:tkinter库

6.16 消息框、弹窗:tkinter

6.16.1 前言

应用程序中的提示信息处理程序是非常重要的部分,用户要知道他输入的资料到底正不正确,或者是应用程序有一些提示信息要告诉用户,都必须通过提示信息处理程序来显示适当的信息,让用户了解下一步该如何配置。提示信息有很多种类,包括警告,错误,提示,确认,重试等。不同种类的提示信息框适合用在各种不同的情况。
在Windows系统中,对话框(Dialog Box)是一种特殊类型的窗口,用于在用户界面中向用户显示信息,或者在需要的时候获得用户的输入响应。对话框通常包含一些控件,如文本框、按钮、列表框、组合框等,用于与用户进行交互。
消息框(Message Box)是对话框的一种特殊形式,它是一种弹出模式对话框,用于给用户显示简短的信息,并可能包含一个或多个按钮,供用户选择。消息框通常用于在应用程序中通知用户一些基本信息,例如错误消息、警告消息或提示消息。
弹窗(Pop-up)是指在应用程序窗口之外弹出的一个轻量级窗口,通常用于显示广告、提示信息或提供额外的功能。弹窗通常包含文本、图像和按钮等元素,供用户进行交互。弹窗可以是模态对话框,也可以是非模态对话框。模态对话框会阻止用户与应用程序的其他部分进行交互,直到关闭弹窗;而非模态对话框则不会阻止用户与应用程序的其他部分进行交互。
消息框(Message Box)和弹窗(Pop-up)是两种不同的用户界面元素,主要有以下区别:
显示方式:消息框是通过调用MessageBox类的Show方法来显示一个包含文本消息的对话框,通常包含一个或多个按钮,供用户选择。而弹窗则是在应用程序窗口之外弹出的一个轻量级窗口,通常通过调用特定函数来实现。
功能用途:消息框主要用于向用户显示简短的信息、提示或警告,并等待用户响应。弹窗则主要用于提供额外的信息或功能,例如广告、提示或搜索框等,并不一定需要用户响应。
模态性:弹窗可以是模态对话框,也可以是非模态对话框。模态对话框会阻止用户与应用程序的其他部分进行交互,直到关闭弹窗;而非模态对话框则不会阻止用户与应用程序的其他部分进行交互。消息框通常是模态对话框。
总之,消息框是一种特殊的对话框,用于向用户显示简短的信息并等待用户响应。而弹窗则是在应用程序窗口之外弹出的一个轻量级窗口,用于提供额外的信息或功能。
接下来我们将介绍在Python中实现消息框的几种方法。

6.16.2 tkinter

Tkinter是Python的标准GUI库。Python使用Tkinter可以快速创建GUI图形用户界面,它是一个小巧、轻便且灵活的库。
以下是一些Tkinter的主要特性:
跨平台性:Tkinter可以在多种操作系统上运行,如Windows、Mac和Unix。
易用性:Tkinter提供了一种简单易用的方式来创建GUI应用。它内置了很多小部件(Widgets),如按钮、文本框、标签等,这些都可以直接使用。
灵活性:虽然Tkinter提供了一些预定义的组件,但用户也可以创建自定义的组件。
与其他Python库集成:Tkinter可以很好地与诸如Pandas、NumPy等Python库集成。
在tkinter库中,一共有8个函数可以用来创建消息框。这些函数都是通过调用_show函数来实现的。接下来我们来一一介绍他们。
导入

from tkinter.messagebox import *

6.16.2.1 showinfo:创建信息提示框

print(showinfo(title=“info标题”, message=“内容”))

在这里插入图片描述

点击确定后返回:ok

6.16.2.2 showwarning:创建警告提示框

print(showwarning(title=“warning标题”, message=“内容”))

在这里插入图片描述

点击确定后返回:ok

6.16.2.3 showerror:创建错误提示框

print(showerror(title=“error标题”, message=“内容”))

在这里插入图片描述

点击确定后返回:ok

6.16.2.4 askquestion:创建询问提示框

print(askquestion(title=“askquestion”, message=“内容”))

在这里插入图片描述

点击后返回:yes,点击后返回:no

6.16.2.5 askokcancel:创建询问确定还是取消提示框

print(askokcancel(title=“askokcancel”, message=“内容”))

在这里插入图片描述

点击确定后返回:True,点击取消后返回:False

6.16.2.6 askyesno:创建询问是否提示框

print(askyesno(title=“askyesno”, message=“内容”))

在这里插入图片描述

点击后返回:True,点击后返回:False

6.16.2.7 askyesno:创建询问是否取消提示框

print(askyesnocancel(title=“askyesnocancel”, message=“内容”))

在这里插入图片描述

点击后返回:True,点击后返回:False,点击取消返回None。

6.16.2.8 askretrycancel:创建询问重试取消提示框

print(askretrycancel(title=“askretrycancel”, message=“内容”))

在这里插入图片描述

点击重试后返回:True,点击取消后返回:False

以上8种消息框基本上涵盖了在开发中遇到的大部分情况。熟练掌握上述消息框的调用足以完成日常遇到的各种需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/119083.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

NPDP产品经理证书是什么行业的证书?

NPDP是一个跨行业的证书,它适用于各种不同类型和规模的组织。无论是制造业、服务业还是科技领域,都可以从NPDP认证中获益。 1. 制造业: 制造业涉及大量的产品开发和创新活动。从汽车制造到电子设备制造,从家居用品到航天航空&…

idea + Docker-Compose 实现自动化打包部署(仅限测试环境)

一、修改docker.service文件,添加监听端口 vi /usr/lib/systemd/system/docker.service ExecStart/usr/bin/dockerd -H fd:// --containerd/run/containerd/containerd.sock -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock重启docker服务 systemctl daemo…

Shopee、Lazada卖家不得不看的提升销量技巧,自养号测评打造权重

近年来,大部分虾皮、Lazada卖家开始通过测评补单的方式来提升店铺权重和产品排名,以吸引更多流量。这种方式可以有效提高产品的销售转化率,对店铺的运营起到推动作用。然而,测评补单并非简单的购买过程,其中涉及到许多…

干洗店预约下单管理系统收衣开单拍照必备软件

随着生活水平的提高和节奏的加快,商务人士的衣物越来越多,但精力和时间却越来越少。于是,干洗店应运而生,在中国,几乎所有的中心城市干洗店都门庭若市。若每人每月需要干洗一套服装,一个城市每月则需干洗50…

HTML5语义化标签 header 的详解

🌟🌟🌟 专栏详解 🎉 🎉 🎉 欢迎来到前端开发之旅专栏! 不管你是完全小白,还是有一点经验的开发者,在这里你会了解到最简单易懂的语言,与你分享有关前端技术和…

idea使用Alibaba Cloud Toolkit实现自动部署

在日常开发过程中,经常会使用到jenkins进行项目部署,但对一些小项目来说,这就过于复杂,就可以使用Alibaba Cloud Toolkit插件配合shell脚本进行项目的远程部署工作。 一、下载Alibaba Cloud Toolkit插件 二、服务器安装nohup 1.…

Kafka - 消息队列的两种模式

文章目录 消息队列的两种模式点对点模式(Point-to-Point,P2P)发布/订阅模式(Publish/Subscribe,Pub/Sub) 小结 消息队列的两种模式 消息队列确实可以根据消息传递的模式分为 点对点模式发布/订阅模式 这两…

Power BI 实现日历图,在一张图中展示天、周、月数据变化规律

《数据可视化》这本书里介绍了一个时间可视化的案例(如下图所示),以日历图的形式展示数据的变化,可以在一张图上同时观察到:(1)每一天的数据变化;(2)随周变化…

创建个人github.io主页(基础版)//吐槽:很多国内教程已经失效了

一、就跟着官网教程来很快就好了 官方文档的教程 GitHub Pages | Websites for you and your projects, hosted directly from your GitHub repository. Just edit, push, and your changes are live. // 简单跑通为例,第一个链接直接能行了,如果不想…

超全整理,服务端性能测试-docker部署tomcat/redis(详细步骤)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 1、docker部署tom…

sql server 生成连续日期和数字

在sqlserver里,可以利用系统表master..spt_values里面存储的连续数字0到2047,结合dateadd()函数生成连续的日期 select convert (varchar(10),dateadd(d, number, getdate()),23) as workday from master..spt_values where type…

全面分享‘’找不到msvcp140.dll无法继续执行代码修复教程

计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是“msvcp140.dll缺失”。这个错误通常会导致某些应用程序无法正常运行。为了解决这个问题,我们需要找到合适的解决办法。本文将介绍5种解决msvcp140.dll缺失问题的方法,帮…

【Python】基于非侵入式负荷检测与分解的电力数据挖掘

文章目录 前言一、案例背景二、分析目标三、分析过程四、数据准备4.1 数据探索4.2 缺失值处理 五、属性构造5.1 设备数据5.2 周波数据 六、模型训练七、性能度量文末送书:《Python数据挖掘:入门、进阶与实用案例分析》 前言 本案例将根据已收集到的电力…

Phthon下载库函数

在代码中使用import tushare as ts导入时编译会报错找不到tushare,此时则表示本地没有相应的库函数包 打开安装python的目录,找到pip.exe文件目录,例如D:\Python\Python311\Scripts,文件夹右键->在终端打开,输入pi…

Linux部署Redis哨兵集群 一主两从三哨兵(这里使用Redis6,其它版本类似)

目录 一、哨兵集群架构介绍二、下载安装Redis2.1、选择需要安装的Redis版本2.2、下载并解压Redis2.3、编译安装Redis 三、搭建Redis一主两从集群3.1、准备配置文件3.1.1、准备主节点6379配置文件3.1.2、准备从节点6380配置文件3.1.3、准备从节点6381配置文件 3.2、启动Redis主从…

idea 设置serlvet 类模板(快捷生成servlet类)

我的版本是idea2020.3.4,博客中有相应安装教程,其他版本设置类似: 1.选择文件-->设置 2.选择编辑器-->文件和代码模板-->其他 3.选择Web-->Servlet Annotated Class.java-->复制相应模板,下面顺便设置了注释模板 …

【Docker】Docker Compose的使用

我们知道使用一个Dockerfile模板文件,可以让用户很方便的定义⼀个单独的应用容器。然而,在日常工作中,经常会碰到需要多个容器相互配合来完成某项任务的情况。 例如要实现一个Web项目,除了Web服务容器本身,往往还需要…

m1 安装 cocoapods

其实最终解决问题很简单,麻烦的是如果找到解决问题的答案。 网上的答案一大堆,但不一定适合你的电脑,就好像天下的女人到处有,但不一定都适合你,一定要亲自试验一下才知道结果。 前提条件: 命令行工具&am…

Leetcode 18 三数之和

//双指针&#xff0c;不过因为是三个数所以左侧是两个下标class Solution {public List<List<Integer>> threeSum(int[] nums) {int n nums.length;Arrays.sort(nums);List<List<Integer>> ans new ArrayList<List<Integer>>();for(int …

优思学院:六西格玛培训中的“绿带”和“黑带”

在当今竞争激烈的商业世界中&#xff0c;提高效率、减少浪费是每个组织都追求的目标。为了达到这一目标&#xff0c;六西格玛管理方法为组织提供了一个卓越的工具。在六西格玛培训中&#xff0c;我们经常会听到“绿带”和“黑带”这两个术语。那么&#xff0c;究竟什么是绿带和…