在Linux中使用Python创建GUI

时间:2009-08-31 05:25:00

标签: python linux user-interface gtk pygtk

快速提问。

我正在使用Linux,我想尝试使用Python制作GUI。我听说过像Qt,GTK +和PyGTK这样的东西,但我不知道它们到底是什么,它们之间的区别是什么。

他们如何使用GNOME,KDE,XFCE等不同的DE有什么不同吗?是否有任何IDE允许您像Microsoft Visual Studio一样创建GUI(对于C#,C,Visual Basic等)?

或者我应该使用除Python以外的其他语言来制作GUI应用程序?

5 个答案:

答案 0 :(得分:12)

您的第一步应该是http://wiki.python.org/moin/GuiProgramming

有些工具包可以在一个环境中集成到另一个环境中。例如PyQt,PyKDE(和全新的PySide)在KDE环境中会更好,而GTK版本(包括WX-Widgets)将更好地融入GNOME / XFCE桌面。

您应该查看要定位的环境。您可以使用基本的便携式GUI工具包,或者您可以与tour DE进行更深入的集成,例如使用集成密码管理器和配置文件解析器,它们集成在特定的DE中,如KDE或GNOME。

您还应该考虑您的选择所指示的依赖关系,以及默认情况下基本DE所带来的依赖关系。例如,KDE 3.X分支中的PyKDE具有非平凡的依赖性集,而在4.X分支处,等离子体绑定使得Python GUI编程依赖性不再成为问题。

有几种IDE工具,具有不同的完整性和成熟度。最好的办法是再试一次,看看最符合你需求的东西。

答案 1 :(得分:4)

我会避免使用其他语言来制作Python的GUI。

我对wxwidgets感到非常幸运,这是一个跨平台开发系统WX的python绑定。它非常容易学习并且非常强大。 wxwidgets的问题在于它默认不安装,因此您的用户需要在他们希望运行您的应用程序的每个平台上安装它。有关详细信息,请参阅http://wxwidgets.org/

如果您希望人们能够在不安装任何其他内容的情况下使用您的程序,请使用Python附带的GUI系统Tkinter。

除非你已经知道那些系统,否则我会避免使用GTK或KDE的Python绑定。它们也需要下载,它们似乎没有像wxwidgets那样多采用。

答案 2 :(得分:2)

每个桌面环境都使用特定的工具包来构建它的组件。例如,KDE使用Qt,GNOME使用Gtk。

您对工具包的使用取决于您所针对的桌面环境类型,如果您想要定位各种桌面,那么请使用可在许多桌面环境中使用的工具包,例如Wx小部件适用于Linux,Mac OS和Windows。为了构建简单的GUI应用程序,Tkinter将会这样做。

答案 3 :(得分:1)

使用glade UI designer和pyGtk绑定...这是我第一次使用python时遇到lots of blog posts and tutorials to help you get started

答案 4 :(得分:0)

使用PyGTK。与工具包一样重要的是它的基础,使用PyGTK,你也可以使用GLib,它的文件系统抽象(python模块gio)对Linux桌面非常重要,它的高级跨桌面功能,如glib.get_user_data_dir()和其他应用程序框架工具,以及GObject及其属性和信号模型。