Python 作为一个新手,如果我想创建一个小型GUI程序,我应该去哪里?

Python 作为一个新手,如果我想创建一个小型GUI程序,我应该去哪里?,python,wxwidgets,tkinter,py2exe,Python,Wxwidgets,Tkinter,Py2exe,我是一个新手,有点用BASIC、Python编写的经验,最重要的是,我有一点汇编程序(作为视频游戏ROM破解的一部分)。我想创建一个小工具,用于修改特定文件中特定点的十六进制值,该文件将具有GUI界面 我正在寻找的是创建小型GUI程序的能力,我可以将其作为EXE(或者,至少是一个独立目录)分发。我不喜欢.NET语言,因为我不想强迫人们下载一个庞大的.NET framework包。目前,我已经设置了带有IDLE和Boa构造函数的Python,并且应用程序在那里运行。我曾尝试查找有关编译依赖Wxwi

我是一个新手,有点用BASIC、Python编写的经验,最重要的是,我有一点汇编程序(作为视频游戏ROM破解的一部分)。我想创建一个小工具,用于修改特定文件中特定点的十六进制值,该文件将具有GUI界面

我正在寻找的是创建小型GUI程序的能力,我可以将其作为EXE(或者,至少是一个独立目录)分发。我不喜欢.NET语言,因为我不想强迫人们下载一个庞大的.NET framework包。目前,我已经设置了带有IDLE和Boa构造函数的Python,并且应用程序在那里运行。我曾尝试查找有关编译依赖Wxwidgets的python应用程序的信息,但搜索结果和我找到的信息令人困惑,或者完全不可理解

我的问题是:

  • python是用于此类项目的好语言吗
  • 如果我使用Py2Exe,WxWidgets是否已经包括在内?或者我的用户必须在他们的机器上安装WxWidgets吗?我认为Py2Exe只是生成一个独立的目录“dist”,其中包含用户双击并运行应用程序所需的文件,对吗
  • 如果程序只是依赖Tkinter来实现GUI,那么它会包含在EXE Py2Exe生成的文件中吗?如果是这样的话,他们是否有只使用Tkinter的Python“可视化”GUI构建器/IDE
  • 谢谢你抽出时间


    < p>最好考虑/说/搜索WXPython(不是WxWIDGET),因为WxPython是WxWistGeC++的Python包装器。 1.)Python是一种很好的语言。如果你只针对windows,我仍然会在.NET/C中这样做。如果您想要跨平台,可以一直使用Python/wxPython

    2.)是的,wxPython文件应该包含在dist目录中。当然,您必须将wxPython安装到您的开发机器上。有关如何构建的一些说明,请参阅。py2exe确实会生成一个目录,其中包含运行程序所需的所有内容。它会给你一个EXE,你可以双击它

    3.)我从未将Python的Tkinter与py2exe一起使用过,但我不明白为什么它不能按照wxPython的思路工作


    您应该记住,您的最终可分发目录将是10s的MEG(py2exe包含python解释器和应用程序所需的其他库)。没有.NET framework那么多,但是现在不是每个人都已经安装了吗?

    对于多平台GUI项目,我建议您使用和

    我最近将它们用于一个小应用程序,我喜欢两者;Qt有一个很棒的Gui设计器,PyQt slot\signal模型适合我

    您可以使用py2app和py2exe在Osx和Windows上部署应用程序;这是一个有用的链接,向您展示了如何和可能的大小结果

  • Python将满足您的需要
  • wxWidgets和Python是完全不同的东西。我想你指的是wxPython,它是一个用于Python的GUI工具包。我不确定Py2Exe是否会包括这一点,因为我从未使用过Py2Exe-我手动构建包及其依赖项
  • 我很确定特金特会被包括在内。我用了一点tkinter,它工作得很好

  • 如果你不害怕学习一门新的语言,请考虑TCL/TK。我之所以提到这一点,是因为Tcl的分发机制比几乎所有的分发机制都要优越,这使得在嵌入式虚拟文件系统中打包一个包含所有您需要的东西的文件exe非常容易——Tcl/Tk运行时、您的程序、图标、声音文件等。你在一个平台上使用的技术同样适用于所有人。您不必为不同的平台使用不同的工具

    如果你对此感兴趣的话,谷歌搜索starpack(一个包含所有内容的文件)、starkit(独立于平台的应用程序)和Tlckit(特定于平台的运行时)


    Tcl/Tk并不是每个人都喜欢的,但作为一种入门GUI语言,它很难打败IMO。如果说它有一个致命弱点的话,那就是它没有打印支持。然而,令人惊讶的是,现在有多少GUI不需要打印支持

    大多数人已经有了.Net-大多数人没有Python。。。