Python GUI应用程序没有“Python.app版"?

2024-06-11 23:11:53 发布

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

我最近开始使用Tkinter,现在我想试试wxPython,但我有一个主要问题:在Mac上,Python应用程序启动并运行gui。我使用的是鸭嘴兽,所以window已经有一个应用程序可以“附加”自己。为什么需要Python.app版也?有办法绕过这个问题吗?这种方法感觉就像在Mac上的X11内部运行Wine中的Windows应用程序一样。在


Tags: 方法app应用程序tkinterwindowsmacwxpythongui
1条回答
网友
1楼 · 发布于 2024-06-11 23:11:53

你用错了工具做这项工作。鸭嘴兽的全部意义在于它可以将非GUI脚本转换为GUI应用程序。“应用程序”和“窗口”对脚本是不可见的,脚本认为它只是通过系统argv给stdout写信。在

Platypus documentation明确表示鸭嘴兽“不打算用于创建具有复杂用户交互的大量macosx应用程序”。在

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

如果你真的知道自己在做什么,也许你可以忽略两个不同包的文档,强迫它们一起做你想做的事情,但不然,为什么还要尝试呢?在

如果你想打包一个知道其GUI的GUI应用程序,不管它是TkInter、wx还是其他东西,那么方法是使用py2app。无需学习教程以外的任何内容,您可以将wxPython(或PyQt或TkInter或其他任何东西)脚本转换为可双击的Mac应用程序。您可以根据需要对其进行定制(导出UTIs、为文件类型分配图标等等)。wxPython的文档已经告诉您如何做到这一点。在

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

相关问题 更多 >