Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python tkinter可执行应用程序中外部函数的异常处理_Python_Tkinter_Cx Freeze - Fatal编程技术网

Python tkinter可执行应用程序中外部函数的异常处理

Python tkinter可执行应用程序中外部函数的异常处理,python,tkinter,cx-freeze,Python,Tkinter,Cx Freeze,因此,我制作了一个tkinter应用程序并构建了一个可执行文件,开发版本运行良好。但在可执行版本中,只有Gui工作,应用程序由两个框架组成,在最后一个框架中,我从读取csv的外部文件调用函数。我的可执行版本出现了一些错误,我不知道如何调试以跟踪错误。我的主要目标是得到一个回溯、一个错误消息框,甚至控制台警告,当我运行我的可执行文件时,任何能够在我的外部函数上通知错误的东西 我的文件的基本结构 我正在使用cx\u freeze构建我的exe 将tkinter作为tk导入 将tkinter.file

因此,我制作了一个tkinter应用程序并构建了一个可执行文件,开发版本运行良好。但在可执行版本中,只有Gui工作,应用程序由两个框架组成,在最后一个框架中,我从读取csv的外部文件调用函数。我的可执行版本出现了一些错误,我不知道如何调试以跟踪错误。我的主要目标是得到一个回溯、一个错误消息框,甚至控制台警告,当我运行我的可执行文件时,任何能够在我的外部函数上通知错误的东西

我的文件的基本结构

我正在使用cx\u freeze构建我的exe

将tkinter作为tk导入 将tkinter.filedialog作为filedialog导入 从tkinter导入ttk 从函数导入函数

主类


将tkinter作为tk导入
将tkinter.filedialog作为filedialog导入
从tkinter导入ttk
##外部功能
从函数导入函数
STCAP(tk.tk)的等级:
定义初始化(self,*args,**kwargs):
#框架专用
tk.tk.\uuuuu初始化(self,*args,**kwargs)
tk.tk.wm_头衔(自称“家乐福NLC”)
传统几何(自,“500x400”)
tk.tk.可调整大小(self,0,0)
容器=tk.框架(自身)
container.pack(side=“top”,fill=“both”,expand=True)
container.grid_rowconfigure(0,权重=1)
container.grid\u column配置(0,权重=1)
self.frames={}
对于F英寸(起始页,第一页,第二页):
框架=F(容器,自身)
self.frames[F]=帧
frame.grid(行=0,列=0,sticky=“nsew”)
自显示帧(起始页)
def显示画面(自身,续):
帧=自身帧[续]
frame.tkraise()
回程架
框架,在此框架中,我调用对csv文件进行处理的外部函数

class第二页(tk.Frame):
定义初始化(自、父、控制器):
tk.Frame.\uuuu init\uuuuu(自,父)
self.controller=控制器
containerCode=tk.Frame(自)
buttonCode=ttk.按钮(
containerCode,text=“Realizar codecocação”,command=lambda:openFolder()
集装箱代码包(pady=20,padx=100)
buttonCode.pack()
def openFolder():
savePath=filedialog.askdirectory()
如果保存路径为:
##外部函数,我需要跟踪和处理异常,并查看在运行可执行文件时是否出现问题
函数(保存路径)
containerBottom=tk.帧(自身)
button1=ttk.按钮(containerBottom,text=“Voltar”,
command=lambda:controller.show_frame(第一页))
按钮1.pack()
集装箱底部包装(侧面=“底部”,pady=20)
按钮1.pack()

。我不得不说,开始的时候有点痛苦,但表面上的复杂性有很好的原因,如果你正在做任何严肃的编程,你需要知道如何使用它。谢谢@bruno desthuilliers,我会看一看