質問

Swing と SWT を使用したい GUI アプリを作成しています。エンドユーザーは、どちらを使用するかを何らかの方法で指定します (両方を同時に使用することはできません)。一般的に私は SWT を好み、JFace を検討していますが、その最も強力な機能を使用すると、GUI とモデルの間の結合が強化され、Swing を実現できるように GUI を抽象化することがはるかに困難になるようです。も使われます。

これは事実でしょうか?GUI の詳細をモデルに関連付けずに JFace を使用することはできますか、あるいはその逆は可能ですか?

役に立ちましたか?

解決

私の知る限り、JFace ビューアを使用すると、ビューとモデルをかなり適切に分離できます。

ここでの唯一の密結合は、実際のビューア実装の選択です (例:TableViewer と TreeViewer を使用して、モデルを Table ウィジェットまたは Tree ウィジェットに丁寧にバインドします)。

質問の最初の部分に関しては、何らかの理由でアプリケーションを GUI フレームワークの選択から切り離したいと考えていることがわかります。以下を参照することをお勧めします。 UFace プロジェクト

UFace プロジェクト まさにあなたが目指していると思われるもの、つまり多くの GUI バックエンドに対して実行できる単一の UI 実装 (呼び出します) を提供することを目的としています。 プロバイダー):

この記事の執筆時点での UFace プロジェクト ページには、次のプロバイダーのサポートがリストされています。

  • Jフェイス/SWT
  • スイング
  • GWT

(Qt Jambi プロバイダーのサポートについても作業が行われているという噂も聞きました)

他のヒント

あなたは、動的に切り替えることはできません。 JFaceのはSWTを呼び出します。代わりにAWTを呼び出すように求められることはできません。

として用JFaceのカップルかGUIにモデル、よくありません。これは、モデルインターフェイスのセットを持っていますが、あなたは彼らに好きなモデルを接着することができます。それはあなたの顧客がいつの日かJFaceのうち、リッピングのオプションを望んでいる場合はきれいにこれを実行するのはあなた次第です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top