20

私はかなり大規模で複雑なデータ分析プログラムを書いていますが、プログラムのGUIを構築する時が来たと思うようになりました。だから私の質問は:

どのGUIツールキットを使用する必要がありますか?

私はGUIのコーディングと構築にまったく慣れていないので、提供できるガイダンスをいただければ幸いです。それは世界で最も単純なツールキットである必要はありません、私はかなり速く学びます。ただし、次のことができる必要があります(これらのすべてではないにしても、特定のツールキットにとっておそらく信じられないほど基本的なものもありますが、念のためにこれらすべてを捨てるのが良いと思いました)。

グラフ(実際にはスペクトル)やプロットなどをユーザーが見ることができるように、画面に直接描画できるようにする必要があります。前述のスペクトルをクリックした場所の位置情報を収集できる必要があります。テキストを表示し、ユーザーからテキスト入力を受け取ることができる必要があります。メニューを生成できる必要があります(ファイル、編集などを知っています)。便利なテーブルを生成するための組み込みウィジェットがある場合(ただし、画面に直接描画できれば、その不足を克服できます)。警告、ダイアログボックス、保存して開くボックスなどをポップアップできる必要があります。これでほぼ完了です。これらのほとんどは、書き出すとかなり基本的なように見えますが、GUIを部分的にコーディングして取得したくありません。次に、IIが別のツールキットで書き直す必要があることに気付きます。

私はこのプログラムをC++で記述しており、GUI部分をCなどで記述したくないので、ツールキットはC++をサポートする必要があることに注意してください。

さらに、クロスプラットフォームツールキットは、単一プラットフォームツールキットよりも望ましいでしょう。ただし、それが単一のプラットフォームツールキットでなければならない場合は、Linux用にすることをお勧めします。

最後に、私は劇的に、クローズドソースツールキットよりもオープンソースツールキットを好みます。

それを超えて、私は何も追加することを考えることができません。よろしくお願いします。

うーん、答えに基づいて、QtとwxWidgetsの両方を見て、どちらが私にとってより魅力的かを確認します。私と一緒に複数の回答を受け入れたとして受け入れることはできましたが、受け入れられませんでした。2つのことを検討しているため、1つだけを受け入れるのは不公平です。おそらく1〜2週間で、ツールキットを調べて考えました。使いたいもの。

4

8 に答える 8

25

私の意見では、C ++の場合、Qtは最もイライラせず、最も機能が充実したツールキットです。また、完全にクロスプラットフォームです。Qtは、バージョン4.5が利用可能になる2009年3月のいつかLGPLライセンスを取得することに注意してください。現在、GPLおよび商用ライセンスバージョンでのみ提供されています。

QtのGUIデザイナーは優れています。多くのユーティリティ機能(シーングラフライブラリ、翻訳サポート、組み込みのJavascriptエンジン、組み込みのWebKitライブラリ)があります。MOC(特別なプリコンパイラー)を介して、C++にいくつかのランタイムバインディング機能とイントロスペクションももたらします。

技術的なアプリケーションの場合、Qwt(http://qwt.sourceforge.net/)が必要なものを提供していることに気付くかもしれません。Qtに基づいて構築されています。

Qtは、GUIなしでユーティリティサポート(ネットワーキングなど)が必要な場合は、「ヘッドレス」で使用することもできます。

他のクロスプラットフォームC++オプションはwxWidgetsです。これは使用可能ですが、Qtとは実際には比較できません。そのはるかに低レベルのツールキットであり、使いやすさや完全な丸みはありません。Gtkmmは、GTK+の精神に基づくもう1つのオプションです。

于 2009-02-25T04:53:56.127 に答える
20

WxWidgetsをお試しください。クロスプラットフォーム(Linux、Mac OS X、およびWindowsでコンパイル)および広く受け入れられています。

http://www.wxwidgets.org/

オープンソースも!

于 2009-02-25T05:00:05.177 に答える
4

アプリケーションのターゲットとするOSのネイティブルックアンドフィールが必要かどうかによって異なります。Qtは、前述のように、おそらくクロスプラットフォームツールキットの中で最も使いやすいものですが、独自のウィジェットセットです。KDEで実行している場合を除いて、ネイティブアプリのルックアンドフィールは得られません。

私は仕事でwxWidgetsを使用しています。時にはイライラすることもあれば、あまり洗練されていない場所もありますが、ターゲットとするプラットフォームのネイティブなルックアンドフィールを提供します。実際には、ネイティブUIコントロールをラップして、wxWidgetsが移植されるすべてのプラットフォームで共通のAPIを提供します。

于 2009-02-25T05:04:29.940 に答える
3

wxWidgetsとDialogBlocksを併用することもお勧めします。これは非常に優れたビジュアル GUI ビルダーです。

wxWidgets にはいくつかの荒削りな点があると言えますが、開発コミュニティは非常に活発で、バグ レポート/質問/貢献に対して非常に敏感です。

于 2009-02-25T06:11:28.017 に答える
1

私はwxWidgets(ツールキット)+ wxFormBuilder(gui-designer)+ eclipse(ide)を使用します。すべてのツールはクロスプラットフォームで無料です。

于 2011-12-09T07:03:19.057 に答える
1

Qt。また、Qt上に構築されたKDEを使用することもできます。

于 2009-02-25T04:54:04.240 に答える