没有“Python.app”的Python GUI应用程序?

时间:2012-09-26 21:33:01

标签: python wxpython tkinter

我最近开始使用Tkinter,现在我想尝试wxPython,但我有一个主要问题:在Mac上,Python应用程序启动并运行gui。我正在使用Platypus,所以窗口已经有一个应用程序“附加”自己。为什么它也需要Python.app?有办法解决这个问题吗?在Mac上的X11内运行Wine内的Windows应用程序时,此方法感觉“被抛在一起”。

1 个答案:

答案 0 :(得分:2)

你正在使用错误的工具来完成工作。 Platypus的重点在于它可以将非GUI脚本转换为GUI应用程序。 “app”和“window”对于脚本是不可见的,它认为它只是通过sys.argv接收内容并写入stdout。

Platypus documentation明确表示Platypus“不打算用于创建具有复杂用户交互的大量Mac OS X应用程序”。

wxPython文档说明你应该使用py2app(例如http://wiki.wxpython.org/Optimizing%20for%20Mac%20OS%20X)来在Mac上构建wx应用程序。 (您可能会发现一些过时的文档提到BundleBuilder,但忽略它。)

如果你真的知道自己在做什么,也许你可以忽略两个不同软件包的文档并强制它们一起做你想做的事情,但除此之外,为什么要尝试呢?

如果您想要打包一个知道其GUI的GUI应用程序 - 无论是TkInter,wx还是其他东西 - 使用py2app的方法就是这样。在没有学习教程之外的任何内容的情况下,您可以将wxPython(或PyQt或TkInter或其他)脚本转换为可双击的Mac应用程序。您可以将其自定义到您想要的任何程度(导出UTI,将图标分配给文件类型,......)。 wxPython的文档已经告诉你如何做到这一点。

顺便说一下,我怀疑这里的部分问题是你不知道OS X应用程序和Unix可执行文件之间的区别。但是如果你坚持使用跨平台工具包(比如wx)和py2app,你可能会侥幸逃脱。