首页 > 编程语言 >python中tk的simpledialog.askstring报错解决方案

python中tk的simpledialog.askstring报错解决方案

时间:2023-07-15 12:34:58浏览次数:50  
标签:窗口 parent python askstring newWin simpledialog 报错

simpledialog.askstring还是比较好用的, 能够很方便的获取用户输入的文本, 但是在多线程中会出现下面的错误:
_tkinter.TclError: window ".!_querystring" was deleted before its visibility changed
解决的方案参考: https://stackoverflow.com/questions/53480400/tkinter-askstring-deleted-before-its-visibility-changed
我在代码中增加了中文注释:

#Create a new temporary "parent"
newWin = Tk()	# 创建一个新顶级窗口
#But make it invisible
newWin.withdraw()	# 使此窗口处于隐藏状态
#Now this works without throwing an exception:
retVal = simpledialog.askstring("Enter Value","Please enter a value",parent=newWin)	# 设置父窗口
print(f'用户的输入为:{retVal}')
#Destroy the temporary "parent"
newWin.destroy()	# 再销毁刚才创建的临时主窗口

标签:窗口,parent,python,askstring,newWin,simpledialog,报错
From: https://www.cnblogs.com/huzhongqiang/p/17555945.html

相关文章

  • 关于AWS-阿里-堡垒机Console界面-登录-多因子MFA-认证的动态口令生成的python实现
    对于很多公司来说、都会要求在登录云平台,如AWS云,阿里云,或者堡垒机Console,甚至操作系统时,都会要求登录时,进行二次认证也即是多因素,多因子,MFA认证,关于多因素认证、一般有短信验证码,软件生成code,或者邮件接收Code,都可以实现今天笔者主要讲述,如何通过python代码进行实现,AWS,阿里云、......
  • python实现iou计算
    importnumpyasnpdefiou(box1,box2):x1,y1,x2,y2=box1w1,h1,w2,h2=box2left_max=max(x1,w1)right_min=min(x2,w2)top_max=max(y1,h1)bot_min=min(y2,h2)ifleft_max>=right_minortop_max>=bot_......
  • pythonlist添加一行
    PythonList添加一行的实现方法一、整体流程为了帮助刚入行的小白理解如何实现“PythonList添加一行”,我们可以使用以下步骤进行解释:步骤描述1创建一个空的列表2定义要添加的新行3使用列表的append()方法将新行添加到列表中4打印列表以验证添加的行......
  • pythongridFS
    PythonGridFS:用于存储和检索大文件的Python库![gridfs_logo](简介PythonGridFS是一个基于Python的库,用于在MongoDB数据库中存储和检索大文件。MongoDB是一个流行的文档型NoSQL数据库,它提供了GridFS作为一个标准的文件系统存储解决方案。GridFS可以处理超出MongoDB文档大小限制......
  • python=3.6.9=h265db76_0
    如何实现“python=3.6.9=h265db76_0”?作为一名经验丰富的开发者,我非常愿意教会那些刚入行的小白。在本文中,我将分步向你展示如何实现“python=3.6.9=h265db76_0”。实现步骤首先,让我们来看一下实现该目标的步骤:步骤描述1安装Anaconda2创建一个新的环境3激活......
  • python3字符串去掉汉字
    Python3字符串去掉汉字的实现作为一名经验丰富的开发者,我将向你介绍如何使用Python3来实现字符串去掉汉字的功能。在开始之前,我们先来了解一下整个实现的流程。实现流程步骤描述1导入必要的模块:我们需要使用re模块来进行正则表达式操作。2定义一个函数:我们将会创......
  • python3执行cmd命令
    如何使用Python3执行cmd命令作为一名经验丰富的开发者,我将向你介绍如何使用Python3执行cmd命令。在这篇文章中,我将分步骤教你如何实现,并提供相应的代码示例。总体流程在开始之前,让我们先了解整个流程。下面是使用Python3执行cmd命令的步骤概览:步骤描述1导入必要的模......
  • python3函数加锁
    Python3函数加锁的实现流程概述为了实现函数加锁,我们需要使用线程锁(threadlock)来确保在多线程环境下函数的原子性操作。以下是实现函数加锁的流程概述:导入threading模块,该模块提供了线程相关的功能。创建一个线程锁对象。在需要加锁的函数内部,使用acquire方法获取锁。执行......
  • Python学习1
    Python学习1简单输出语句可直接使用”print“进行输出1Python缩进缩进指的是代码行开头的空格。在其他编程语言中,代码缩进仅出于可读性的考虑,而Python中的缩进非常重要。Python使用缩进来指示代码块。如果省略缩进,Python会出错。空格数取决于程序员,但至少需要一个。......
  • Python下载3.10版本
    Python下载3.10版本1.官网https://www.python.org/下载Windows版本的64位操作系统的安装包2.下载完成后打开,勾选第二个选项,会自动为python添加变量环境给计算机,选择自定义安装3.勾选forallusers,地址默认C盘即可,安装。【win+R】打开运行cmd,输入python至此,配置成功。......