このページでは

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

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

でUIを構築します。Qt Quick

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

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

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

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

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

UIテクノロジーの比較

次の表は、Qt QuickQt Widgets の比較で、それぞれの長所、限界、理想的な使用例を示しています:

特徴Qt Quick 機能Qt Quick ControlsQt Widgets説明
主要言語QMLとJavaScriptC++Qt Quick は宣言型。Qt Widgets は命令型、古典的な C++。
ネイティブなルック&フィールはい(Qt Quick Controls スタイル経由)。はい(ネイティブ・デスクトップ・ウィジェット)。どちらもターゲット・プラットフォームでネイティブ・ルックアンドフィールをサポートする。
カスタム・スタイルはい(カスタマイズ可能なスタイル、カスタム QML コンポーネント)。はい(Qt スタイルシート)。両フレームワークとも、異なるメカニズムによる広範なカスタムスタイリングが可能。
流れるようなアニメーションとトランジションあり(GPU アクセラレーションによるアニメーション内蔵)。制限あり(QPropertyAnimation でサポートされているが、流体 UI アニメーション用に設計されていない)。Qt Quick Qt Widgets はそうではありません。
タッチサポートあり(タッチおよびジェスチャー用に設計されている)。制限あり(タッチイベントは存在するが、Qt Widgets はマウスとキーボード入力を想定している)。Qt Quick Qt Widgets 。優れたタッチUXのためには、より多くの手作業が必要です。
標準的な業界ウィジェットあり(一般的なデスクトップ・コントロールを提供し、カスタム・コンポーネントは必要なウィジェットを実装できる)。はい(成熟した既製のデスクトップ・ウィジェットの豊富なセット)。Qt Quick はあらゆる種類のデスクトップ・コントロールを実装できるが、Qt Widgets には、より幅広い従来のウィジェット一式が最初から含まれている。
モデル/ビュー・プログラミングはい(ListViewTableView のようなデリゲートベースのビューによる柔軟なモデルサポート)。はい(QTableViewQListViewQTreeView など、クラシックな MVC ビューの包括的なセット)。Qt Quick は、デリゲートを使用して、データとプレゼンテーショ ンを明確に分離しています。Qt Widgets は、成熟したレディメイドのモデル/ビュークラスを多数提供しています。
迅速なUIプロトタイピングあり(QMLでは非常に高速なイテレーションが可能)。あり(従来のUI、特に Qt Widgets Designer).Qt Quick Qt Widgets を使えば、 を使ってクラシックなデスクトッ プインターフェースを素早く組み立てることができます。Qt Widgets Designer
ハードウェアアクセラレーテッドグラフィックスはい(Qt Quick Scene Graphを介したGPUアクセラレーション)。部分的に(ウィジェットはソフトウェアでレンダリングする。)Qt Quick のみ、ビルトインのフルシーン GPU アクセラレーションを提供します。詳細はグラフィックを参照してください。
グラフィック効果あり(シェーダーベースのブラー、グロー、ドロップシャドウ、カラーエフェクトなど)。制限あり(基本的なエフェクトは Qt GUIのみ)。Qt Quick Qt Widgets シンプルなCPUエフェクトのみ。
リッチテキスト処理。はい(Qt のリッチテキスト ドキュメント クラスはQt QuickQt Quick Controls'TextArea で利用できますが、C++ の実装が必要な場合があります)。はい(QTextDocumentQTextEdit 、および関連クラスによる完全なサポート)。Qt Quick は Qt のリッチテキストエンジンとQTextDocument を介して統合され、Qt Widgets はテキスト処理のための成熟したすぐに使えるクラス群を提供します。

注: Qt Widgets UI に QML ビューを表示することができます。詳しくはQt Quick ウィジェットを参照してください。

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

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.