web-dev-qa-db-ja.com

wxPython vs PyQt vs PyGTK:いつ、何を使うべきか?

  • Pythonを使用してGUIインターフェースを設計するために、最低限の健康経験を持つ人からアドバイスが必要です。
  • GUIの複雑さに応じて、いつ、何を選択しますか?
  • 開発品質を向上させるために使用できるGUIビルダーはどれですか?

これは私の最初のGUIデザインであり、GUIビルダーを使用せずに実行しました。現時点では、 ObjectListView wx.ListCtrlのラッパーがネイティブに簡単にプログレスバーを含むわけではないことを理解しているため、またはゲージ要素。 (写真の「アップロードステータス」列をご覧ください)。

注:ObjectListViewには、現在のwx.Pythonではなく、.Netバージョンの進行状況バーがあります。

PS:私はこの素晴らしいものを見つけました Python GTK + Full Stack Tutorial

enter image description here

39
user1630938

あなたが何を求めているのか本当に分かりません。 wxPythonとpyQt/pysideは、おそらくすべてのプラットフォームで最も使いやすく、ほとんどのオペレーティングシステムで適切に表示されます。 wxPythonはネイティブウィジェットをラップするように特別に設計されているので、アプリをネイティブに見せたい場合は、wxPythonが最適だと思います。アプリのテーマ/スキンを可能にしたい場合は、PyQTまたはpyGTKの方が良いかもしれません。

PyQt/PySideはモバイルをある程度サポートしていますが、他の2つはそうではないと思います。モバイル向けのプログラムを計画している場合は、そのルートに行くか、Kivyをご覧ください。

PyQt/PySideには非常に強力なWYSIWYGエディターがあります。 wxPythonにはいくつかありますが、それらのどれもがwxのすべてのウィジェットをサポートしているとは思わず、それらのサポートは不安定です。とにかくすべてのコーディングを手作業で行うので、それは私を止めませんでした。

いつものように、多くのドキュメントを読んで、それぞれを試して、どれがあなたの脳に適合し、あなたのニーズに最も合っているかを確認する必要があるでしょう。

23
Mike Driscoll

プラットフォーム間の互換性が必要な場合は、PyGTKを使用しないでください。 GTK3はまだWindows上で動作せず(最後にチェックしました)、GTK2には最新のソースで修正されたWindowsでのひどいメモリリークがありますが、Windows用の新しいリリースはコンパイルされていません。

GUIデザイナーツールの方が優れていると思うので、PyQtよりもPySide(商用オプションのより柔軟なライセンス)およびwxPythonよりもPySide/PyQtに投票します。 GUIをグラフィカルに(およびアプリケーションコードとは無関係に)迅速に作成および編集できることは、時間の大幅な節約になります。


更新:実際、安定性の理由と長期的なサポートのために、PySideよりもPyQtをお勧めします。 PySideの開発は遅れており、バグを修正する人はほとんどいません。Qt5のサポートに取り組んでいる人はいません。

14

WindowsのPyQT

PyQT in Windows

PyGTK

PyGTK

KDEのPyQT

PyQT in KDE

  1. WindowsのPyQT
  2. PyGTK + 3
  3. KDEのPyQT

したがって、PyQTを使用する場合、アプリケーションの設計はオペレーティングシステムとデスクトップ環境によって異なります。私はMacintoshを持っていないので、私のアプリケーションがどのように見えるかを絵で示すことはできません。これは、PyQTとPyGTK + 3で書かれた私のアプリケーションの1つです。 PyGTK + 3の場合、設計はそのままであるため、PyQTの場合と違いはありません。手動でコーディングするのに1分も費やすことなく設計を構築するのに役立つGladeプログラムがあるので、間違いなく最も簡単に学ぶことができます。しかし、PyQTを使用すると、アプリケーションのデザインを微調整でき、バグから髪を引き裂くことができません。

12
HexSFd