GTK和QT有什么区别?

请耐心等待我,因为我是Linux的新手。 我已经在Mac上用REALbasic编写GUI程序已有好几年了。 我正在尝试学习Python,我想为Linux编写GUI应用程序(主要是Ubuntu和Mint,因为它们是我可以访问的发行版,它们似乎是最受欢迎的)。 我基本上有三个问题:

  1. GTK和QT之间是否存在显着差异
  2. 我在Ubuntu上quickly玩弄了Glade但是我知道它们是基于GTK 2而现在已经过时了。 那是对的吗?
  3. 是否有任何一体化编辑器让我设计一个GUI然后添加Python代码? (例如,在编辑器中向窗口添加一个按钮,双击该按钮,然后添加按下按钮时要执行的Python代码)

很抱歉,如果这些都是愚蠢的问题,但我想从一开始就学习“正确”的工具。

我会尝试回答你的问题,而不是疯狂的指示。

  1. 它们是显着不同的,即使它们都是小部件库。 常规GTK +基于C和C ++上的QT。 虽然几乎每种编程语言都存在绑定。

  2. 尽管有很多GTK2应用程序,但你对GTK2还是比较正确的。 我希望GTK2能够使用一段时间,就像GTK1一样。 当推动推动时,GTK2已被弃用,如果你正在开始新的GTK3。

  3. 记住GTK和QT只是小工具工具包。 例如…… Gnome应用程序,使用GTK以及Gnome-Libs。 如果你想要,请看看vala。 它被认为很简单,vala直接将源代码编译为C,并且具有许多编程语言的完全绑定。 您可能还想查看Anjuta,确保您拥有新的gtk3版本。 显然strait PyGTK只支持GTK2,目前最后我检查过。 如果你想避免所有的Linux DE库,我建议你看看QT。 普通QT与KDE应用程序不同,后者包括KDE库。 QT被认为是非常跨平台的,如果你想编译非* nix,这很酷。 如果您想开始使用QT + Python,请查看PySide(LGPL)或PyQT(GPL)。 QT有一些很好的GUI构建器,比如qt creator和qt-designer。

GTK和Qt是开源的跨平台用户界面工具包和开发框架。 这些是用于Linux的两个最流行的框架,因为它们是开源的,并为开发人员提供了设计图形用户界面的强大工具包。 GTK用作GNOME,LXDE和Xfce桌面环境的标准工具包,而Qt用于KDE。

如果你用C编码,那么显然是去GTK +

如果您使用C ++编写代码,请转到Qt,否则您将使用Gtkmm(一个基于GTK +的C ++包装器)

如果您使用Python编写代码,GTK +和Qt都会对该语言进行绑定:请参阅PyGtk,PyQt和PySide(诺基亚自己推出的那个)。

Qt主要用于KDE和GNOME中的GTK +。 因此,如果您想为GNOME开发,请考虑GTK +,因为GTK +库的必要依赖项应该已经安装在GNOME系统上; 最终用户不需要安装它们。 GTK +开发也受益于名为Glade Interface Designer的工具; 如果您愿意,可以使用它来创建用户界面。