27

ライセンス上の理由もあって、私は wxWidgets のかなりのヘビー ユーザーです。

  • Qt が LGPL の下でリリースされるという最近の発表を踏まえて、wxWidgets の将来をどのように見ていますか?
  • wxwidget は今でも新しいプロジェクトに適した技術的な選択肢だと思いますか? それとも、Qt が事実上の標準になるため、Qt を採用することをお勧めしますか。
  • また、これが最も一般的なスクリプト言語 (PyQt、wxPython、wxRuby など) とのバインディングに与える可能性のある影響についても興味があります。プロ級のデザイナーがいるのにwxPythonがいないのに、なぜPyQtがあまり使われていないのでしょうか?

関連している:

https://stackoverflow.com/questions/443546/qt-goes-lgpl-on-windows-is-it-good-enough-to-use-instead-of-mfc

4

7 に答える 7

17

wxWidgets はネイティブ コントロールを使用して適切なルック アンド フィールを実現するクロスプラットフォーム ライブラリであるため、Qt のライセンス変更はほとんど、またはまったく影響を与えません。

編集:

それにかんする

Qtにはネイティブコントロールはありませんが、ネイティブ描画機能があります

ツールキットを比較する wxWidgets wiki ページを引用させてください。

Qt には、wxWidgets のような真のネイティブ ポートはありません。これが意味することは、Qt はそれらを非常にリアルに描画しますが、Qt は各プラットフォームで独自のウィジェットを描画するということです。ただし、Qt には Mac OS X と Windows XP および Vista 用の特別なスタイルが付属しており、ネイティブ API (Mac OS X では Appearance Manager、Windows XP では UxTheme) を使用して標準のウィジェット プリミティブ (スクロールバーやボタンなど) を正確にネイティブ アプリケーション。イベント処理、結果として得られるビジュアル フィードバック、およびウィジェット レイアウトは、常に Qt によって実装されます。

于 2009-01-21T15:45:21.707 に答える
13

私は現在仕事でpyqtを使用していますが、完全に満足しています。ドキュメント (IMHO) が改善され、イベント管理が改善され (シグナルスロット パターンは、古い単純なコールバック スタイルよりも強力です)、カスタム ウィジェットを qt-designer のようなグラフィカル デザイナーにインポートするのがはるかに簡単になります。私が知る限り、qt-designer は、Boa Constructor や pyGlade などの wxpython のどのバージョンよりも強力です)。また、プログラムの文字列をさまざまな言語に翻訳するための優れたサポートもあります (少なくとも wxLocale よりも優れたサポートであり、qt システムに完全に統合されている Qt-Linguist などのツールを使用できます)。

私はいくつかのホビスティックな作品で wxpython を使用していますが、私はまだ初心者です。pyqt よりも大きな利点は、さまざまなプラットフォームでネイティブのルック アンド フィールを使用できることだと思います。たとえば、Windows/Linux アプリケーションを開発している場合、これは大きなポイントです。実際には、「スキン」を使用して Windows-qt アプリケーションでネイティブのルックアンドフィールを取得できますが、それを実現する方法がわかりません (申し訳ありませんが、Windows で qt を使用したことはありません:D)。

于 2009-02-05T10:29:34.033 に答える
8

正直なところ、人々がWxWidgetsから大幅に切り替えることはないと思います。

Pythonには、PyQtバインディングとWxPythonバインディングがあります。QtはWxWidgetsよりもはるかに実用的ですが、GUIpythonオープンソースプログラムの大部分はWxWidgetsで作成されています。これらのプログラムはオープンソースであるため、GPLとLGPLは、ツールキットの選択においてそれほど重要ではありませんでした。

同じことがGtkにも当てはまります。多くのオープンソースアプリケーションは、GtkをWindowsで操作するのが非常に難しいにもかかわらず、WindowsでGtkで作成されています。Qtを使用すると、これらのアプリケーションはクロスプラットフォームベースで保守するのがはるかに簡単になりますが、それは実現していません。

したがって、ツールキットの選択は多くのパラメータの影響を受け、ライセンスはそのうちの1つにすぎません。

Qtがこれまでに作成された中で最も簡単で実用的なGUIツールキットであると私は考えているため、Qtが主流ではない理由はまだわかりません。

于 2009-01-21T09:13:48.313 に答える
8

2009 年 1 月の時点で、Qt 4.5 は LGPL の下で利用可能になる予定でしたが、Riverbank Computing はPyQtの将来のバージョンのライセンスについて何も発表していませんでした。PyQt はまだ商用/GPLv2/GPLv3のみです。

この回答に対するコメントで述べたように、Nokia は 2009 年 8 月に LGPL ライセンスのPySideプロジェクトを発表しました。

于 2009-01-21T12:57:50.827 に答える
3

Qt は非常に包括的で高品質なフレームワークです。wxWidgets を使用していたはずの多くの新しいプロジェクトが、代わりに LGPL Qt を使用するようになると確信しています。しかし、すでに wxWidgets を使用しているプロジェクトは、大規模な書き直しを行うのではなく、間違いなく wxWidgets を使用し続けるでしょう。

于 2009-01-21T10:12:35.823 に答える
3

私が wxPython を選んだ主な理由は 2 つあります。

  1. まだベータ版の製品である Boa Constructor では、プロセスの 100% を統合して制御できますが、PyQt の方が優れたデザイナーを備えていますが、「イベント ハンドラー」の編集には関連がありません。

私の理想的な IDE の設計、イベントの作成、必要な機能コードのみの編集、および実行を許可します。「UIC をコンパイル」せずに、エディタを切り替えずに、コマンド ラインに入る必要がありません。大規模なアプリケーションではほとんど問題になりませんが、私の現在のドメインは高速で小規模なプログラムです。

  1. ライセンス... 今は関係ありませんが、小さな規模で自分のものを販売し始めたら.

  2. イベント機能コード内のオートコンプリートは、QTDesigner ではイベント コードに対して機能しないようです。何かが欠けているかもしれませんが、上記の「壊れた」プロセスにより、RAD になることはありません。

于 2009-07-03T12:31:50.427 に答える
2

クロスコンパイルするように Qt をセットアップできませんでした。Trolltech から、公式にはクロス コンパイルをサポートしていないというメッセージが表示されたのを覚えていますが、今は見つかりません。

多くのガイドがあり、Qt をクロス コンパイルする方法を詳しく説明しているため、何か間違ったことをしていた可能性があります (おそらく)。

フレームワークを選択するときは、クロス コンパイル機能を検討してテストすることをお勧めします。

于 2009-10-20T04:10:12.390 に答える