首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python: EasyGui用fileopenbox()冻结

Python: EasyGui用fileopenbox()冻结
EN

Stack Overflow用户
提问于 2015-12-03 12:36:58
回答 1查看 2.4K关注 0票数 1

我正在编写一个代码来打开PDF文件,选择要裁剪的页数,然后创建一个新的裁剪文件。

以下是代码:

代码语言:javascript
复制
from easygui import *
from pyPdf import PdfFileReader, PdfFileWriter

# 1 select a inputfile
inputFileName = fileopenbox('Please choose a PDF file','', '*.pdf')

#2 total pages
inputFile = PdfFileReader(file(inputFileName, 'rb'))
totalPages = inputFile.getNumPages()

#3 Enter  beginning Page  
begPage = enterbox('Please choose the Beginning Page','it must a number')
while not begPage.isdigit() or begPage ==0 or int(begPage) > totalPages: 
    msgbox('Please enter a valid digit', '', 'ok')
    begPage = enterbox('Please choose the Beginning Page','it must a number')

问题是在测试这些第一步的时候。当我选择该文件并单击OK时,fileopenbox就会冻结,并且不会进入下一个步骤。

如果隔离第一步或第一步和第二步,它工作得很好,但是我无法让它与脚本的其余部分一起工作(步骤3)。

我在我的OSX10.9.2和easygui0.97上使用了Python2.7.10

EN

回答 1

Stack Overflow用户

发布于 2015-12-03 15:25:21

Easygui的gui位使用tkinter。

此页说(强调我的):

如果在MacOSX10.6及更高版本中使用python.org 64位/32位python.org中的Python,您应该只使用带有更新的第三方Tcl/Tk 8.5的空闲或tkinter,比如安装了ActiveTcl 8.5。 如果您正在使用OSX10.9或更高版本以及来自python.org 64位/32位安装程序的Python,则由于Tk问题,应用程序窗口可能无法正确更新。如果可能的话,安装最新的ActiveTcl 8.5.18.0。(另外,在3.4.0、3.3.3和2.7.6安装程序中,一个可能导致ActiveTcl交互使用时崩溃的关键OSX10.9问题已经修复)。 如果您正在使用MacOSX10.6,请不要使用苹果提供的MacOSX10.6中的Python2.6.1中的空闲或Tkinter。如果可能的话,安装并使用Python和Tcl/Tk的更新版本。

这听起来像是您的问题,所以看起来ActiveTcl是您解决tk问题所需要的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34066301

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档