py2exe特性GUI

2024-06-01 08:01:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试用py2exe打包我的程序。它使用traits图形用户界面。
将import语句移入图像.py在try块的“convert_image”函数中,板条箱中的exe在以下第二个点失败:

1:距离\traitsui\ui_特征.py:来自。图像.image导入ImageLibrary
2: dist\traitsui\图像\图像.py:来自traitsui.ui\u特征导入HasBorder、HasMargin、Alignment

文件结构:

root
+-...
+-main.py
+-setup.py
+-dist
  +-...
  +-main.exe
  +-traitsui
    +-...
    +-ui_tratis.py
    +-image
      +-image.py

通过在图像.py在

^{pr2}$

我得到:异常:['C:\Users…\dist\.]
看来这条路是正确的。在


错误跟踪:

Traceback (most recent call last):
  File "main.py", line 8, in <module>
  File "gui\FileSelect.pyc", line 8, in <module>
  File "traitsui\api.pyc", line 27, in <module>
  File "traitsui\basic_editor_factory.pyc", line 30, in <module>
  File "traitsui\editor_factory.pyc", line 32, in <module>
  File "traitsui\helper.pyc", line 32, in <module>
  File "C:\Users\...\dist\.\traitsui\ui_traits.py", line 158, in <module>
    from .image.image import ImageLibrary
  File "C:\Users\...\dist\.\traitsui\image\image.py", line 34, in <module>
    from traitsui.ui_traits import HasBorder, HasMargin, Alignment
ImportError: cannot import name HasBorder

在设置.py{a1}


Tags: inpy图像imageimportuimaindist
2条回答

尝试将packages: ["traitsui"]添加到py2exe的选项字典(使用skip_archive选项)。在

我认为py2exe没有检测到包traitsui.ui_traits正在被使用。您需要强制它在发行版中包含整个traitsui包。在

注意:只是猜测,未经测试。在

嗯,看来我用来拍照片的那个令人兴奋的包有点问题。在

下面是新的安装文件: https://gist.github.com/2570888

相关问题 更多 >