Qt は初めてで、Qt クイック プロジェクトと Qt ウィジェット プロジェクトの違いがよくわかりません。
ユーザーが回転したりせん断したり、パンしたりズームイン/ズームアウトしたりできる六角形の格子を描画するプログラムを作成したいと考えています。最終的にはMIDIコントローラーになります。これにはどのタイプのプロジェクトが適していますか? またその理由は?
これがデスクトップとモバイルの両方のプラットフォームで機能することを願っています。
注: Qt ウィジェットは QML ウィジェットに置き換えられました。この回答は、尋ねられた質問に回答しています。これは、古い Qt ウィジェットに関する歴史的な質問です。
Qt Quick は宣言型のスマートフォン スタイルのユーザー インターフェイスであり、スマートフォン アプリで一般的な多くの優れたアニメーション トランジションをサポートしています。Quick は、プロトタイプを迅速に開発する場合にも適しています。Qt Widget は、従来のデスクトップ指向の UI モデルです。
現在 (Qt5 より前)、デスクトップ システム機能の Qt Quick サポートは不足しています (ただし改善されています)。メニュー、ツールバー、ダイアログ、およびその他の標準的なデスクトップの動作は、Quick ではあまりサポートされていませんが、Widget はこれらの要素を非常によくサポートしています。
アプリをデスクトップやタブレット プラットフォームでネイティブなルック アンド フィールにしたいですか、それとも独自のカスタム UI ウィジェットを中心にシンプルなアプリケーションを構築していますか? Mat が言ったように、Qt Quick が必要な機能をサポートしている場合、それがおそらく最速のアプローチになるでしょう。フル機能のデスクトップ バージョンを構築したい場合は、Qt Widget が最適です。
プロとして qt アプリケーションを開発する者として、私はいつでもウィジェットよりも qml を選択します。
ウィジェットは非常に基本的なものには適していますが、もう少し派手なものを作成する必要があると、ウィジェットはすぐに不十分になります.
Qml は単純に柔軟性が高く、ウィジェットの限られたレイアウト システムを使用する代わりに、好きな場所に項目を固定できます。ウィジェットにはプラットフォーム依存の欠陥がたくさんありますが、プラットフォーム依存の欠陥はほとんどありません。また、プロパティ バインディング システムにより、UI とモデルの同期を非常に簡単に保つことができます。
まず、ウィジェットから始めるべきだと思います。ウィジェット UI は、以前の経験がフロントエンドに関するものである場合に、qt を簡単に学習するのに役立ちます。