ユーザーインターフェース

Qt フレームワークの主なユーザーインターフェース技術はQt QuickQt Widgets です。Qt Quick インターフェースは流動的で動的で、タッチインターフェースに最適です。Qt ウィジェットは複雑なデスクトップアプリケーションを作成するためのものです。Qt Quick と Qt Widgets は、ターゲットプラットフォームのネイティブなルック・アンド・フィールでインターフェースを作成できます。

Qt Quick による UI の構築

Qt Quick は動的で流動的なユーザーインターフェースを作成します。Qt Quick Controlsモジュールは、ボタン、ダイアログ、メニューなどの QML タイプを提供します。宣言型言語であるQML を使って UI を構築し、JavaScript を使ってロジックを実装することができます。

以下のリストには、関連する概要が含まれています:

Qt ウィジェットユーザインタフェース

Qt Widgetsは、デスクトップ環境で一般的なユーザーインターフェイス要素です。ウィジェットは、Windows、Linux、macOS でネイティブなルック&フィールを提供し、基盤となるプラットフォームにうまく統合されます。ウィジェットは成熟した機能豊富なユーザーインターフェイス要素であり、ほとんどの伝統的なユーザーインターフェイスに適しています。Qt Quick とは対照的に、ウィジェットは大規模なデスクトップアプリケーションを作成するためのものであり、流動的なインターフェイスを持つタッチ中心のアプリケーションの作成にはあまり適していません。

Qt ウィジェットに関する概要は以下の通りです:

UI インターフェイスの比較

以下の表は Qt Widgets と Qt Quick のインターフェースの比較です。

Qt Quick / Qt Quick コントロールQt ウィジェットコメント
使用言語QML/JSC++
ネイティブルックアンドフィールQt Widgets と Qt Quick Controls は、ターゲットプラットフォームのネイティブなルック&フィールをサポートしています。
カスタムスタイルQt Widgets はスタイルシートによるカスタマイズを提供し、Qt Quick Controls はカスタマイズ可能なスタイルを選択できます。
流れるようなアニメーション UIQt ウィジェットは、アニメーション用にうまくスケールしません。Qt Quick は、宣言的な方法でアニメーションを実装する便利で自然な方法を提供します。
タッチスクリーンQt Widgets ではマウスカーソルを使ったインタラクションが必要ですが、Qt Quick ではタッチインタラクションのための QML 型が用意されています。
業界標準のウィジェットQt Widgets は、20 年以上にわたって開発されてきた、業界標準のアプリケーションを構築するために必要なすべての機能を提供します。
モデル/ビュープログラミングQt Quick は便利なビューを提供しますが、Qt Widgets はより便利で完全なフレームワークを提供します。Qt Quick ビューに加えて、Qt Quick Controls はTableView を提供します。
迅速な UI 開発Qt Quick は迅速な UI プロトタイピングと開発に最適です。
ハードウェアアクセラレーションによるグラフィックスQt は、Qt Quick インターフェースと Qt Widgets インターフェースに完全なハードウェアアクセラレーションを提供し、ソフトウェアでレンダリングします。グラフィックスの概要に詳細があります。
グラフィカルエフェクトいくつかの Qt Quick モジュールはグラフィカルエフェクトを提供し、Qt ウィジェットインタフェースはQt GUI を使ってエフェクトをかけることができます。
リッチテキスト処理Qt Widgets は現在、テキストエディタを実装するための最も包括的な基盤を提供しています。Qt のリッチテキストドキュメントクラスは Qt Quick や Qt Quick Controls のTextArea でも利用できますが、C++ の実装が必要になる場合があります。

以下のページには、ユーザーインターフェースの設計と開発に関する詳細情報があります:

本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。