我正在编写一个代码来打开PDF文件,选择要裁剪的页数,然后创建一个新的裁剪文件。
以下是代码:
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
发布于 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问题所需要的。
https://stackoverflow.com/questions/34066301
复制相似问题