Tkinter的分段错误?

时间:2017-07-17 21:39:43

标签: python python-2.7 tkinter segmentation-fault tk

所以,我有这个功能,应该让用户选择几个图像文件包含在文档中。出于某种原因,每次我在Mac OSX 10.11.6上的较大程序中运行它时,此函数都会崩溃,并且我得到一个分段错误错误,特别是分段错误11.然而,当我自己运行该函数时,它工作得很好。这是怎么回事?

import sys
import logging
from time import strftime
import Tkinter as Tk
import tkFileDialog

def get_filepaths(title=None):
    """
    Gets an unlimited number of filepaths until the user clicks 'Cancel'.
    :param title: The title of the window dialog.
    :return: list of filepaths
    """
    if title is None:
        title = "Select an image to add to the report. Click Done to load " \
                "the file. When you're finished, click Cancel to continue."

    logging.debug("Inputting filepaths...")
    types = (("all files", "*.*"), ("images", "*.jpg *.jpeg *.png *.tiff "
                                              "*.tif *.gif *.bmp *.psd"))
    root = Tk.Tk()
    root.withdraw()
    paths = []
    while True:
        path = tkFileDialog.askopenfilename(title=title, filetypes=types)
        if len(path) == 0:
            break
        paths.append(path)
    return paths

1 个答案:

答案 0 :(得分:0)

我在橙色 pi 上的 debian Jessie armhf 和氚板上的 Ubuntu focus armhf 上都遇到过这个问题。 (allwinner H3 cpu,橙色pi的克隆)。 2021年问题依然存在。Opensuse的leap 42.1、X86_64上没有问题

我发现这个评论是关于对 Tix 库文件 Utils.tcl 的一个简单的 kludge 修复,这解决了我的代码中的问题。它绕过了 tixBusy 函数。

bugs.archlinux.org/task/33607