【问题标题】:Python and native GUIPython 和原生 GUI
【发布时间】:2011-05-27 03:26:33
【问题描述】:

我检查了一些其他问题和网站,我得出的结论是 Python 确实允许(如果我错了,请纠正我)您使用不同的跨平台工具包(如 Qt、wxWidgets 和其他一些工具包)制作 GUI 程序. 但是,如果我不想要跨平台可移植性怎么办。主要的,我想使用原生库开发原生应用程序,如 Mac 的 Cocoa、Windows 的原生库、GNOME 的 GTK 和 KDE 应用程序的 Qt,但代码不同。不同的代码在这里不是问题。我可以这样做吗?我只是不需要跨平台可移植性,但我需要制作原生应用程序?

来自专业程序员的任何见解?

【问题讨论】:

    标签: python windows qt macos wxwidgets


    【解决方案1】:

    不要浪费你的时间。使用 wxPython,它将为您使用原生工具包。

    【讨论】:

    • wxPython 使用原生库吗?有什么例子吗?
    • 它使用 wxWidgets,它使用原生库。 wxwidgets.org/about "wxWidgets [利用] 原生平台的控件和实用程序。"
    【解决方案2】:

    在 Windows 上,PyWin32 项目绑定到 Win32 API(和 MFC,如果您已经知道的话。)

    在 OS X 上,您可以使用 PyObjC 编写 Cocoa 程序 -- 参见他们的 examples

    编辑:请注意,总的来说,我同意@Ignacio 的建议。在大多数情况下,很难证明维护单独的每个平台代码库的额外费用和麻烦是合理的。 OTOH,我有客户拒绝在 Mac 项目上使用 wx,因为他们说它不会生成看起来像真正的 Mac 应用程序的应用程序。

    【讨论】:

      【解决方案3】:

      查看Venster。它是基于 ctypes 的 Win32 API 包装器。

      虽然我必须承认我从未使用过它,只是看了看,并稍微使用了它的 WinCE 端口(VensterCE)。

      【讨论】:

        猜你喜欢
        • 2011-08-30
        • 2010-10-08
        • 2016-03-31
        • 2012-09-24
        • 1970-01-01
        • 2013-08-02
        • 2018-07-17
        • 1970-01-01
        • 2016-11-16
        相关资源
        最近更新 更多