web-dev-qa-db-ja.com

GTKとQTの違いは何ですか?

私はLinuxの初心者ですので、ご容赦ください。私は数年前からMacで REALbasic でGUIプログラムを書いてきました。 Pythonを学ぼうとしています。Linux用のGUIアプリを作成したいです(主にUbuntuとMintは、私がアクセスできるディストリビューションであり、最も人気があるようです)。基本的に3つの質問があります。

  1. GTKとQTの間に大きな違いはありますか
  2. UbuntuでquicklyGladeをいじりましたが、これらはGTK 2に基づいており、現在は廃止されていることを理解しています。あれは正しいですか?
  3. GUIを設計し、Pythonコードを追加できるオールインワンエディターはありますか? (たとえば、エディターのウィンドウにボタンを追加し、ボタンをダブルクリックしてから、ボタンが押されたときに実行されるPythonコードを追加します)

これらが本当に馬鹿げた質問であれば申し訳ありませんが、最初から「正しい」ツールを学び始めたいと思います。

29
Nootrino

狂った方向に進むことなく、あなたの質問に答えようとします。

  1. どちらもウィジェットライブラリですが、大きく異なります。通常のGTK +はCに基づいており、QTはC++に基づいています。ほとんどすべてのプログラミング言語にバインディングが存在しますが。

  2. GTK2アプリケーションは非常に多くありますが、GTK2についてはかなり正しいです。 GTK1がそうだったように、GTK2がしばらく使用されていると思います。 Pushが突き進むと、GTK2は非推奨になり、新たに起動する場合はGTK3に移行します。

  3. Remeber GTKとQTは、単なるウィジェットツールキットです。たとえば... Gnomeアプリケーションでは、GTKとGnome-Libsも使用します。必要な場合は、valaをご覧ください。シンプルと見なされ、valaはソースからソースへ直接Cにコンパイルし、多くのプログラミング言語に完全にバインドします。また、Anjutaをご覧になることもできます。新しいgtk3バージョンがあることを確認してください。どうやら海峡PyGTKはGTK2のみをサポートしています。すべてのLinux DEライブラリを避けたい場合は、QTをご覧になることをお勧めします。プレーンQTは、KDEライブラリを含むKDEアプリケーションとは異なります。 QTは非常にクロスプラットフォームであると見なされます。これは、* nix以外でコンパイルする場合に便利です。 QT + Pythonを使い始めたい場合は、PySide(LGPL)またはPyQT(GPL)をご覧ください。 QTには、qt creatorやqt-designerなどの優れたGUIビルダーがあります。

12
J. M. Becker

GTKとQtは、オープンソースのクロスプラットフォームユーザーインターフェイスツールキットおよび開発フレームワークです。これらはオープンソースであり、開発者にグラフィカルユーザーインターフェイスを設計するための強力なツールキットを提供するため、Linuxで使用される最も人気のある2つのフレームワークです。 GTKはGNOME、LXDE、およびXfceデスクトップ環境の標準ツールキットとして使用され、QtはKDEに使用されます。

Cでコーディングする場合は、明らかにGTK +を使用します

C++でコーディングする場合はQtを使用し、そうでない場合はGtkmm(GTK +のC++ラッパー)を作成します

Pythonでコーディングする場合、GTK +とQtの両方に言語のバインディングがあります。PyGtk、PyQt、およびPySide(Nokia自身が起動したものを参照)。

5
One Zero