リッチ デスクトップ アプリケーションを構築するための C++ フレームワークはありますか?
基本的に私が探している重要な機能は、Flex4 MXML に似ており、ビジュアル プレゼンテーションとアプリケーション ロジックを xml に分離します。たとえば、Qt4 では、視覚的な外観を xml 定義で指定できますか? これは状態に基づいているため、イベントによって UI が変化し、このような新しいビジュアル コンテンツが表示されます。
リッチ デスクトップ アプリケーションを構築するための C++ フレームワークはありますか?
基本的に私が探している重要な機能は、Flex4 MXML に似ており、ビジュアル プレゼンテーションとアプリケーション ロジックを xml に分離します。たとえば、Qt4 では、視覚的な外観を xml 定義で指定できますか? これは状態に基づいているため、イベントによって UI が変化し、このような新しいビジュアル コンテンツが表示されます。
はい。
Qt の Designer ツールを使用して、UI デザインを XML に分離し、UI コンパイラ (uic ツール) がそれを UI クラスにコンパイルします。
コードはそのクラスを (委任または継承によって) 使用して、独自の GUI を表示します。
そして、イベント処理用に Qt のシグナルスロット メカニズムを投入すると、C++ GUI アプリ向けの素晴らしい開発フレームワークが手に入ります :)
編集:
Qt には XML で UI を指定するツールがありますが、必ずしもそうする必要はありません。UI はプログラムで作成できますが、なぜそうするのでしょうか? Qt Designer の使い方を学んだ日は、プログラムによる UI の作成をやめた日でした。
また、個人的には、(netbeans の UI デザイナーとは異なり) イベント処理コードから UI を分離するという Qt のパラダイムは、aaawwweeesssooommmeee だと感じています。
Qtはそうです。XML はビルド時にコードにコンパイルされるため、UI は静的なままです (つまり、変更するには再コンパイルする必要があります)。
wxWidgets と XRC を使用すると、XML で動的UI を指定できます。つまり、XML ファイルはアプリケーションとは別のままであり、XML ファイルを変更すると、それに合わせて UI が変更されます (もちろん、制限内で)。