ユーザーインターフェース
Qt フレームワークの主なユーザーインターフェース技術はQt QuickとQt Widgets です。Qt Quick インターフェースは流動的で動的で、タッチインターフェースに最適です。Qt ウィジェットは複雑なデスクトップアプリケーションを作成するためのものです。Qt Quick と Qt Widgets は、ターゲットプラットフォームのネイティブなルック&フィールでインターフェースを作成できます。
Qt Quick による UI の構築
Qt Quick は、動的で流動的なユーザーインターフェースを作成します。Qt Quick Controlsモジュールは、ボタン、ダイアログ、メニューなどの QML タイプを提供します。宣言型言語であるQML を使って UI を構築し、JavaScript でロジックを実装することができます。
以下のリストには、関連する概要が含まれています:
- Qt クイックコントロール
- QMLアプリケーション- QML入門
- QMLにおける視覚的な型
- QML におけるユーザ入力への応答
- QML におけるアニメーション
- QMLでのテキストの表示
- QMLでのレイアウト
- スタイルとテーマのサポート
- QMLにおけるJavaScriptの統合
- Qt Quick 3D- 3D グラフィックス用アドオン
- Qt Shader Tools- シェーダーエフェクトのアドオン
Qt ウィジェットユーザインタフェース
Qt ウィジェットは、デスクトップ環境で一般的なユーザーインターフェイス要素です。ウィジェットは、Windows、Linux、macOS でネイティブなルック&フィールを提供し、基盤となるプラットフォームにうまく統合されます。ウィジェットは成熟した機能豊富なユーザーインターフェイス要素であり、ほとんどの伝統的なユーザーインターフェイスに適しています。Qt Quick とは対照的に、ウィジェットは大規模なデスクトップアプリケーションを作成するためのものであり、流動的なインターフェイスを持つタッチ中心のアプリケーションの作成にはあまり適していません。
以下のリストには、Qt ウィジェットに関連する概要が含まれています:
- ウィジェットクラス
- アニメーション・フレームワーク
- アプリケーション・メイン・ウィンドウ
- ダイアログウィンドウ
- ドラッグ&ドロップ
- ウィジェットとグラフィックス・ビューのジェスチャー
- レイアウト管理
- ウィンドウとダイアログのウィジェット
- スタイルとスタイル認識ウィジェット
UI インターフェイスの比較
以下の表は Qt ウィジェットと Qt Quick インターフェイスの比較です。
Qt Quick / Qt Quick コントロール | Qt ウィジェット | コメント | |
---|---|---|---|
使用言語 | QML/JS | C++ | |
ネイティブルックアンドフィール | Qt Widgets と Qt Quick Controls は、ターゲットプラットフォーム上でネイティブなルック&フィールをサポートします。 | ||
カスタムスタイル | Qt ウィジェットにはスタイルシートによるカスタマイズ機能があり、Qt クイックコントロールにはカスタマイズ可能なスタイルが用意されています。 | ||
流れるようなアニメーション UI | Qt ウィジェットは、アニメーション用にうまくスケールしません。Qt Quick は、宣言的な方法でアニメーションを実装する便利で自然な方法を提供します。 | ||
タッチスクリーン | Qt ウィジェットではマウスカーソルを使ったインタラクションが必要ですが、Qt Quick ではタッチインタラクションのための QML タイプが用意されています。 | ||
業界標準のウィジェット | Qt ウィジェットは、20 年以上かけて開発された、業界標準のアプリケーションを構築するために必要なすべての機能を提供します。 | ||
モデル/ビュープログラミング | Qt Quick は便利なビューを提供しますが、Qt ウィジェットはより便利で完全なフレームワークを提供します。Qt Quick ビューに加えて、Qt Quick Controls はTableView を提供します。 | ||
迅速な UI 開発 | Qt Quick は、迅速な UI プロトタイピングと開発に最適です。 | ||
ハードウェアアクセラレーションによるグラフィックス | Qt は、Qt Quick インターフェースと Qt Widgets インターフェースに対して、完全なハードウェアアクセラレーションを提供します。グラフィックスの概要に詳細があります。 | ||
グラフィカルエフェクト | いくつかの Qt Quick モジュールはグラフィカルなエフェクトを提供し、Qt ウィジェットインタフェースはエフェクトにQt GUI を使用できます。 | ||
リッチテキスト処理 | Qt ウィジェットは現在、テキストエディタを実装するための最も包括的な基盤を提供しています。Qt のリッチテキスト・ドキュメント・クラスは、Qt Quick や Qt Quick Controls のTextArea でも利用できますが、C++ の実装が必要になる場合があります。 | ||
関連トピック
以下のページには、ユーザーインターフェースの設計と開発に関する詳細情報があります:
- Design Tools- デザイナーと開発者のためのユーザー・インターフェース・ツールの概要
- グラフィックス- グラフィックスの概要
- モデル/ビュー・プログラミング
- 高 DPI
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。