Qtのサンプルとチュートリアル
Qtには、新規ユーザーがQt開発を始められるよう、コードサンプルやチュートリアルのコレクションが用意されています。これらの資料は、ウィジェットの基本的な使い方から、アプリケーションの構築手順を段階的に解説するチュートリアルまで、幅広いトピックを網羅しています。
サンプルはQtパッケージの一部です。詳細については、「ダウンロード」ページをご覧ください。
これらのサンプルは、QtのAPIの使用方法を示すものです。実運用を目的としたものではなく、通常、出荷されるアプリケーションに必要なエラー処理、入力検証、セキュリティ強化は省略されています。詳細は「Qt共有セキュリティモデル」を参照してください。
例の起動
Qt Creator のWelcome モードでサンプルを開いて実行してください。ほとんどのサンプルはさまざまなプラットフォームで動作します。プラットフォーム固有のサンプルを検索するには、検索フィールドにプラットフォーム名(または任意のキーワード)を入力してください。たとえば、検索フィールドに「Android 」と入力すると、Androidと完全に互換性のあるサンプルが一覧表示されます。
例の動作に関する詳細については、以下を参照してください:
アプリケーションのサンプル
横向きおよび縦向きのデバイス向けに設計された電卓です。ユーザーインターフェースにはQt Quick のカスタムコンポーネントとレスポンシブレイアウトを使用し、アプリケーションロジックにはJavaScriptを使用しています。 | |
Qt Quick の3Dカメラ、拡張シーン環境、およびQt Quick 3Dの使用例を示す自動車モデルのサンプルです。 | |
状態ベースのカスタムユーザーインターフェースを備えたQt Quick アプリケーション。 | |
Qt Quick 3D Physics およびその他の Qt モジュールを使用したサイコロを振るアプリケーション。 | |
JSON、テキスト、およびPDFファイルを表示・印刷するためのウィジェットアプリケーション。 | |
Qt Quick 3Dのマテリアルおよびエフェクト機能を実演します。この例では、Qt Quick 3Dでパーティクルエフェクトやマテリアルをどのように使用できるかを示しています。 | |
カスタマイズされたQt Quick コントロールを利用して、ファイルシステム上のテキストファイルを表示するデスクトップQMLアプリ | |
Getting Started programming with Qt Quick: An Alarm Application | アラームアプリケーションをベースにした、Qt Quick のチュートリアル。 |
Qt Quick 、Qt Location 、Qt Positioning 、および Qt WebSockets を組み合わせて、地図上に落雷をリアルタイムで表示する、レスポンシブな UI を備えたアプリケーション。 | |
Qt Quick を使用したオーディオおよびビデオの再生。 | |
タッチデバイス向けのQMLアプリ。FolderListModelを備えたRepeaterを使用してフォルダ内のコンテンツにアクセスし、PinchHandlerを使用して取得したコンテンツに対するピンチジェスチャを処理します。 | |
Qt Design Studio から 3D プロジェクトに C++ バックエンドを追加する方法を示しています。 | |
森部邦明氏による人気のパズルゲームの QML 実装。 | |
Satellite Info のサンプルでは、Sky View、Table View、または RSSI View を使用して利用可能な衛星とユーザーの現在位置を表示します。これはQt Positioning およびQt Quick | |
「サーモスタット」のサンプルでは、ウィンドウサイズに応じて異なるデザインを実装する方法を示しています。 | |
あらゆるプラットフォームでネイティブのように見えるアプリケーションの作成方法を示す、ToDoリストアプリケーションのQML実装です。 | |
Qt Quick 3D を使用した、インタラクティブな玩具の選択とリアルタイムの外観調整を実演する 3D カスタマイズ例です。 | |
WebEngineView QML タイプを使用して実装された Web ブラウザ |
デスクトップ
COM アプリケーションの例では、ActiveQt を使用して、COM 経由で自動化できる Qt アプリケーションを開発する方法を示しています。さまざまな QObject ベースのクラスが COM オブジェクトとして公開され、実行中の Qt アプリケーションの GUI と通信します。これらの COM オブジェクトの API は、標準的な COM アプリケーション(つまり、Microsoft Office のもの)の API に似るように設計されています。 | |
実行時にQt Widgets Designer のフォームからユーザーインターフェースを作成する | |
Qt Widgets Designer で作成したフォームをアプリケーションで使用する方法 | |
アプリケーション内でQt Widgets Designer で作成されたフォームを使用する | |
用のカスタム多ページプラグインの作成Qt Widgets Designer | |
カスタムウィジェットプラグインの作成Qt Widgets Designer | |
Qt Quick を使用したオーディオおよびビデオの再生。 | |
Qutlook のサンプルでは、ActiveQt を使用して Outlook を自動化する方法を示しています。このサンプルでは、dumpcpp ツールを使用して、Outlook オブジェクトモデルを記述するタイプライブラリ用の C++ ネームスペースを生成しています。 | |
ヘルプビューアとしてのQt Assistant の使用と制御 | |
簡単な例で、QAxBindable および QAxFactory の使用方法を示します | |
Qt Assistant をアプリケーション用のカスタマイズされたヘルプビューアとして使用する | |
システムトレイアイコンの例では、メニューやポップアップメッセージを備えたアイコンをデスクトップ環境のシステムトレイに追加する方法を示しています | |
スクリーンショットの例では、デスクトップのスクリーンショットを撮影する方法を示しています | |
Qt Widgets Designer 用のカスタムウィジェットプラグインを作成し、そのプラグインに関連付けられたカスタムタスクメニュー項目を提供する方法 | |
QUiLoader を使用した .ui ファイルの動的読み込み | |
ラッパーの例では、既存の QWidget クラスを ActiveX コントロールとしてエクスポートする方法、および QAxFactory を QAXFACTORY_EXPORT() マクロと組み合わせて使用する方法について説明しています。この例の ActiveX コントロールは、Qt が提供する標準のボタンクラスである QPushButton、QCheckBox、および QRadioButton です |
モバイル
横向きおよび縦向きのデバイス向けに設計された電卓です。ユーザーインターフェースにはQt Quick のカスタムコンポーネントとレスポンシブレイアウトを使用し、アプリケーションロジックにはJavaScriptを使用しています。 | |
qml を使用して、さまざまなチャートタイプの使用方法を実演します | |
状態ベースのカスタムユーザーインターフェースを備えたQt Quick アプリケーション。 | |
Qt Quick の3D Physicsやその他のQtモジュールを使用したサイコロを振るアプリケーション。 | |
QOpenGLExtraFunctions を通じて OpenGL ES 3.0 の関数をデモします | |
Qt Quick 、Qt Location 、Qt Positioning 、および Qt WebSockets を組み合わせて、地図上に落雷をリアルタイムで表示する、レスポンシブな UI を備えたアプリケーション。 | |
Map Viewerのサンプルでは、地図の表示や操作、住所の検索、経路検索の方法について解説しています | |
Qt Quick を使用したオーディオおよびビデオの再生。 | |
このQt Quick ベースのアプリケーションでは、APIを使用して静止画や動画をキャプチャする方法を示しています | |
Qt Quick Controls を使用し、簡単な連絡先リストを実装する C++ クラスを備えた QML アプリ | |
コントロールのギャラリー | |
ウェアラブルデバイス向けに設計されたアプリケーションランチャーを実演します | |
QtJenny: Generating C++ proxy classes to access Android APIs | QtJenny の使用法を紹介するデモ |
Qt Quick シーン内でOpenGLをレンダリングする方法を示しています | |
「Sensors Showcase」の例では、視覚的な例を用いてセンサーの使用方法を示しています |
組み込み
状態ベースのカスタムユーザーインターフェースを備えたQt Quick アプリケーション。 | |
「Custom Extension」では、カスタム Wayland 拡張機能の実装方法を示しています | |
「Custom Shell」では、カスタムシェル拡張機能の実装方法を示しています | |
「Fancy Compositor」は、純粋なQMLで洗練されたWaylandコンポジターを作成する方法を示す例です | |
「IVI Compositor」は、IviApplication拡張機能の使用方法を示す例です | |
「Minimal CPP」は、C++でWaylandコンポジターを作成する方法を示す例です | |
「Minimal QML」は、QMLでWaylandコンポジターを作成する方法を示すシンプルな例です | |
「Multi Output」は、複数の出力を持つコンポジターを示す例です | |
Multi Screen は、複数の画面に対応したデスクトップスタイルの Wayland コンポジターです | |
Overview Compositor は、グリッド内のクライアントを切り替える方法を示しています | |
ウェアラブルデバイス向けに設計されたアプリケーションランチャーを実演します | |
「QtShell Compositor」は、QtShell シェル拡張機能の使用方法を示しています | |
「Server Side Decoration Compositor」は、xdg-shell でのサーバーサイドのウィンドウ装飾を実演する簡単な例です | |
「Spanning Screens」は、Waylandクライアントを複数の画面にまたがって表示させる方法を示す例です | |
Thermostat の例では、ウィンドウのサイズに応じて異なるデザインを実装する方法を示しています。 | |
この例では、Qt Quick アプリケーションで仮想キーボードを使用する方法を示しています |
Graphics
「2D Painting」の例は、QPainter と QOpenGLWidget を組み合わせて、対応ハードウェア上でアクセラレーションされた 2D グラフィックスを表示する方法を示しています。 | |
40,000 個のチップアイテムを含む巨大なグラフィックビューシーンを可視化します | |
テキストの高度な機能を実演するQt Quick のサンプルです。 | |
QPainter におけるアフィン変換の仕組みを実演します。 | |
「Analog Clock」の例では、カスタムウィジェットの内容を描画する方法を示しています | |
「Basic Drawing」の例では、QPainter クラスを使用して、基本的なグラフィックプリミティブをさまざまなスタイルで表示する方法を示しています | |
基本的なグラフィックレイアウトの作成方法を示しています | |
QQuickImageProvider を使用して QML で画像を読み込む方法 | |
QMLで画像を非同期に読み込む方法 | |
グラフィックスビュー上のアイテムをアニメーション化する方法を実演します | |
QPainter におけるコンポジションモードの仕組みを解説します | |
QRhi(Qt 3D APIおよびシェーディング言語の抽象化レイヤー)を使用して、テクスチャ付きキューブをレンダリングし、QPainterやQt Widgetsと統合する方法を示します | |
Graphics View フレームワークの使用方法を解説 | |
グラフィックスビュー内でアイテムをドラッグ&ドロップする方法の実演 | |
イージングカーブの例:イージングカーブを使用してアニメーションの速度を制御する方法を示します | |
シーン内のグラフィカルアイテムと対話する方法を解説します | |
QPainter でグラデーションを使用する方法を示します | |
QOpenGLExtraFunctions を使用した OpenGL ES 3.0 関数の実演 | |
QVulkanWindowの使用に関する基本を紹介します | |
QVulkanWindowおよびVulkan APIを使用したレンダリングの基本を解説します | |
QWidgetアプリケーションにおけるQVulkanWindowの使い方を示します | |
QPainterにおける合成モードの仕組みを解説します | |
この例では、OpenGL を使用することを目的とした、最小限の QWindow ベースのアプリケーションの作成方法を示します | |
「Painter Paths」の例では、ペインターパスを使用してレンダリング用の複雑な形状を構築する方法を示します | |
「Path Stroking」の例では、QPainter で使用できるさまざまな種類のペンを紹介します | |
この例では、立体視レンダリングをサポートする最小限の QOpenGLWidget ベースのアプリケーションを作成する方法を示しています | |
Qt Quick のシーンをテクスチャにレンダリングし、それをQuickベースではないDirect3D 11レンダラーで使用する方法について説明します | |
Qt Quick のシーンをテクスチャにレンダリングし、そのテクスチャをQuickベースではないOpenGLレンダラーで使用する方法について説明しています | |
Qt Quick シーンをQRhiTextureにレンダリングする方法を示します | |
Qt Canvas2D 要素の使用方法を実演します | |
QWindow での QCanvasPainter の使用方法を示します | |
Qt Quick アプリケーションにおけるQCanvasPainterの機能を実演します | |
QCanvasPainterおよびQCanvasPainterWidgetの使用方法を実演します | |
QQuickAttachedPropertyPropagator の使用方法を示します | |
Qt Quick コントロールを使用した QML アプリカスタマイズされたコントロールを備えた QML モジュール | |
カスタム「Imagine」スタイルのアセットを使用した自動車用ユーザーインターフェース | |
Qt Quick コントロールを使用したリッチテキストエディタアプリ | |
ListModelによって生成されたデータを表示するためにListViewタイプを使用し、画像にアニメーションを適用するためにSpringAnimationタイプを使用するQML時計アプリケーション。 | |
この例では、アクセシビリティに対応したボタンの実装方法を示しています | |
これは、QML アニメーションのサンプル集です | |
これは、QML Canvas のサンプル集です | |
これは、QMLのドラッグ&ドロップのサンプル集です | |
QWidget::createWindowContainer() を使用して、QQuickWindow を QWidget UI に埋め込む方法を示しています | |
これは、画像タイプに関連するQMLのサンプル集です | |
Qt Quick の例で、UIの特定の部分に対して可変リフレッシュレートを設定する方法を示しています | |
これは、QMLのキーボード操作に関するサンプル集です | |
これは、QMLにおけるMouseArea型の例です | |
MultiEffect の使用方法を示しています | |
MultiEffect の使用方法を示しています | |
RectangularShadow の使用方法を示しています | |
シェーダー効果の使用法を示すQt Quick の例 | |
シェイプ項目の使用方法を示すQt Quick の例 | |
テキストに関連するQMLのサンプル集です | |
QMLのモデル・ビューに関するサンプル集です | |
このサンプルは、QMLにおけるWindow型とScreen型を説明しています | |
QML パーティクルシステムにおけるアフェクターを使用した例集です | |
QML パーティクルシステムにおけるエミッターの使用例集 | |
これは、QML パーティクルシステムにおけるアフェクターを使用した例集です | |
これは、QML パーティクルシステムで Affector を使用する例を集めたものです | |
「コンウェイのライフゲーム」の例では、QMLのTableView型を使用して、ユーザーがパン操作できるC++モデルを表示する方法を示しています | |
「Pixelator」の例では、QMLのTableViewとデリゲートを使用して、カスタムテーブルモデルを実装する方法を示しています | |
この例では、QRhi を使用して、最小限の QWindow ベースのアプリケーションを作成する方法を示しています | |
この例では、レンダリングに QPainter を使用して、最小限の QWindow ベースのアプリケーションを作成する方法を示しています | |
SVG ファイルのレンダリングと表示を行う「Qt Widgets 」の例 | |
Qt Quick のシーングラフでカスタムジオメトリを実装する方法を示しています | |
Qt Quick のシーングラフでカスタムマテリアルを実装する方法を示しています | |
Qt Quick のシーングラフで、QSGRenderNodeを使用してカスタムレンダリングを実装する方法を示します | |
Qt Quick シーン内でDirect3D 11を使用して直接レンダリングする方法を示します | |
単一の QQuickItem 内でカスタムマテリアルとジオメトリを組み合わせる方法を解説します | |
Metalで直接作成されたテクスチャの使用方法を示します | |
Qt Quick シーン内でMetalを使用して直接レンダリングする方法を示します | |
Qt Quick シーン内でOpenGLによるレンダリングを行う方法を示します | |
QPainter ベースのカスタムシーングラフアイテムを実装する方法を示します | |
QRhiでレンダリングされたテクスチャを表示するカスタムQQuickItemの実装方法を示します | |
Qt Quick シーン内でQRhiを使用して直接レンダリングする方法を示します | |
QQuickItemのスレッド化されたレンダリングループを使用しながら、メインスレッドとは独立してアニメーションするカスタムアイテムの利点を示しますQt Quick | |
カスタムシーングラフノード内で、2つのテクスチャプロバイダからの2つのテクスチャを組み合わせる方法を示します | |
Vulkanで直接作成されたテクスチャの使用方法を説明します | |
Qt Quick シーン内でVulkanを使用して直接レンダリングする方法を示します | |
グラフィックスビューシーンでのアンカーレイアウトを実演します | |
QRhi(Qt 3D APIおよびシェーディング言語抽象化レイヤー)を使用して三角形をレンダリングする方法を示します | |
変換の例:変換がQPainterによるグラフィックプリミティブのレンダリングにどのように影響するかを示します | |
QPainterPathの要素を操作する方法を示します | |
Qt SVG 、VectorImage、svgtoqmlの違いを示すQt Quick の例 | |
Qt Quick の「Shapes」サンプルでは、アプリケーション内でシェイプを使用するさまざまな方法を示しています | |
Qt Quick Effect Maker (QQEM) で作成したエフェクトの使用方法を示します | |
アプリケーション内での lottietoqml の使用方法を示す例 | |
Lottieアニメーションの表示と制御を実演Qt Quick |
マルチメディア
利用可能なオーディオデバイスとその設定の一覧表示 | |
QAudioSink クラスを使用したオーディオ再生の有効化 | |
利用可能なデバイスとサポートされているコーデックの検出 | |
QAudioSource クラスを使用したオーディオの録音 | |
静止画のキャプチャや動画の録画方法を示します | |
QAudioSinkを使用したオーディオおよび動画の再生Qt Widgets | |
このQt Quick ベースのアプリケーションは、APIを使用して静止画や動画をキャプチャする方法を示しています | |
QML MediaPlayer タイプを使用したオーディオおよびビデオの再生 | |
動画およびカメラのファインダーコンテンツの変換 | |
を使用してオーディオおよび動画を録画するQt Quick | |
画面またはウィンドウのキャプチャ | |
Qt Spatial Audio の機能の一部を紹介します | |
グラフィックスシーンでの動画ストリーミング | |
ビデオプレーヤーウィジェットの実装 |
3D
ユーザー入力に基づいて、テクスチャが適用された3Dキューブを手動で回転させる方法を示します | |
Qt Quick 3D のマテリアルおよびエフェクト機能を実演します。この例では、Qt Quick 3D でパーティクルエフェクトやマテリアルを使用する方法を示しています。 | |
「Hello GL2」サンプルは、Qtに付属するOpenGL関連クラスの基本的な使用方法を示しています | |
簡単なインスタンス描画を実演します | |
OSM(OpenStreetMap)の建物マップデータを用いた3D建物ビューア。 | |
Qt 3D が提供する4つの基本形状を示し、それぞれに対してメッシュを設定します | |
複数のビューポートからシーングラフをレンダリングする方法を示す QML の例 | |
PBRマテリアルの使用方法を示すQMLアプリケーション | |
シーンをレンダリングする方法を示すC++アプリケーションQt 3D | |
でのシーンのレンダリング方法を示すC++アプリケーションQt 3D | |
シーンをレンダリングする方法を示すQMLアプリケーションxml-ph-0000@deepl.internalのQMLアプリケーションで、シングルパス・ワイヤーフレーム・レンダリング方式を実装していますQt 3D | |
シングルパス・ワイヤーフレーム・レンダリング手法を実装したQt 3D のQMLアプリケーション | |
Qt Quick 3Dにおけるアンチエイリアシングモードを解説 | |
3Dシーンでのベイク済みライトマップの使用方法を示しています | |
カスケードシャドウマップのデモ | |
カスタム後処理エフェクトの作成を実演 | |
C++およびQMLからカスタム頂点データを提供する方法を示しています | |
カスタムマテリアルとC++インスタンステーブルを用いたインスタンス化の実演 | |
シェーディングされたカスタムマテリアルの作成方法を解説 | |
モーフターゲットを使用したC++カスタムジオメトリの作成を実演 | |
カスタム頂点シェーダーおよびフラグメントシェーダーの使用方法を解説します | |
動的なモデル作成の実演 | |
Qt Quick 3Dで2Dオブジェクトと3Dオブジェクトを同時にレンダリングする方法を解説 | |
Qt Quick 3D でのインスタンス化レンダリングの実演 | |
Qt Quick 3D でのシーンのレンダリング方法を解説します | |
QtQuick3Dにおけるレイヤーの使用方法を実演します | |
ディテールレベル(LOD)ヘルパーの使用方法を解説します | |
さまざまなライトタイプの使用方法を解説します | |
Qt Quick 3D でのモーフィングアニメーションの制御方法を解説します | |
実験的なビルド時マテリアル処理機能の使用方法を解説します | |
Qt Quick 3Dにおける順序非依存の透明度を実演します | |
Qt Quick 3DのParticles3Dモジュールの使用方法を解説します | |
モデルの選択方法を紹介します | |
Principled Material の使用方法を実演します | |
C++またはQMLからカスタムテクスチャデータを提供する方法を実演します | |
Quick3D を使用した簡単なゲームの作成方法を実演 | |
Quick 3DシーンでのQt Quick アイテムの使用方法を解説 | |
Qt Quick 3D におけるリフレクションプローブの使用方法を解説 | |
実行時にアセットを読み込む方法を解説 | |
SSGIとライトマップを使用したシーンの例 | |
ExtendedSceneEnvironmentの使用方法を解説します | |
Qt Quick 3D における反射のデモ | |
3Dシーンでフォグを有効にする方法を実演します | |
実行時に3Dアセットを読み込み、そのシーンオブジェクトを照会する方法を解説 | |
Qt Quick 3D での簡単なスキニングアニメーションのレンダリング方法のデモ | |
SkyMaterial を使用したプロシージャルな空のレンダリングと画像ベースのライティングのデモ | |
QtQuick3D Render Extension を使用してステンシルアウトラインを実装する方法を解説 | |
サブメッシュにマテリアルを割り当てる方法を説明します | |
Qt Quick 3D でのカスタムレンダーパスの作成方法を解説します | |
View3Dを使用して、複数のカメラからシーンを表示する方法を解説します | |
レンダリング拡張機能でボリュームフォグを実装する方法を解説 | |
Qt Quick 3Dでのボリュームレンダリングの実行方法について解説します | |
Qt Quick 3D XR を使用した 3D オブジェクトの操作方法について解説します | |
曲面ディスプレイでのタッチ操作および3Dモデルのタッチ操作について解説 | |
Qt Quick 3D XRでの簡単な移動機能の実装方法を解説します | |
Qt Quick 3D XRで物理演算の影響を受ける移動機能を作成する方法を解説します。 | |
Qt Quick 3D XR を使用したシンプルな VR シーンの設定を実演 | |
Qt Quick 3D XR におけるコントローラー入力の解説 | |
Qt Quick 3D XRにおけるハンドトラッキング入力のデモ | |
Qt Quick 3D XRでの空間アンカーの使用方法のデモ | |
物理オブジェクトの生成方法を実演 | |
CharacterController 型のデモ | |
複雑なコリジョン形状の使用方法を実演 | |
さまざまな形状の使用方法を実演 | |
トリガーボディとコリジョン情報の使用方法 | |
物理シーンでのジョイントの使用方法を解説 | |
ボディの質量と慣性の設定方法をいくつか紹介します | |
物理マテリアルの使用方法を実演 | |
簡単な物理シーンの設定方法を解説 | |
Qt Quick 3D を使用した、インタラクティブな玩具の選択とリアルタイムの外観調整を実演する 3D カスタマイズ例。 |
データ可視化
この例では、マイクサンプルとオーディオレベルの関係を示すグラフを描画します | |
QMLでカスタム入力ハンドラを使用して軸のドラッグを実装し、カスタム軸フォーマッタを作成します | |
qml を使用して、さまざまなチャートタイプの使用方法を示します | |
Qt Charts Widgets API を実演するアプリケーション | |
グラフを使用して飛行機のコックピットを模したサンプルアプリケーション | |
棒グラフ、散布図、サーフェスグラフのギャラリー | |
2Dまたは3Dグラフの印刷 | |
ウィジェットベースのアプリケーションで2Dグラフを使用する | |
Qt Graphs でCSVファイルのデータを可視化する方法 | |
Qt Quick アプリケーションでの2Dグラフの使用 | |
数式を可視化する | |
QLineSeriesおよびQScatterSeriesでOpenGLアクセラレーションを有効にする方法を示す例 | |
Qt Charts のQML APIを使用して、厳しいパフォーマンス要件を満たすアプリケーションを実装する方法を示す例 | |
これは、qmlを使用してさまざまなチャートタイプを使用する方法を示す基本的なデモです | |
QML アプリケーションでの Bars3D の使用 | |
QMLアプリケーションでのScatter3Dの使用 | |
100銘柄の株式チャートを設定可能な形式で表示します。 | |
Surface3Dグラフの3つの異なる使用方法をまとめたギャラリー | |
ボリュームオブジェクトのレンダリング | |
2Dおよび3Dグラフを備えた風力タービンのダッシュボード | |
独自のズーム効果を作成する方法を示す例 |
データ処理とI/O
バインド可能なプロパティを使用することで、C++コードを簡素化できることを実演 | |
モデル/ビューフレームワークでのQt SQL クラスの使用方法を示します | |
キャッシュ付きテーブルの例:テーブルビューを使用してデータベースにアクセスし、ユーザーがプッシュボタンで明示的に送信するまでデータの変更をキャッシュする方法を示しています | |
QCalendarの例では、ユーザーが指定したカスタムカレンダーの仕組みを解説しています | |
「Contiguous Cache」の例では、QContiguousCache を使用して非常に大規模なモデルのメモリ使用量を管理する方法を示しています。 一部の環境ではメモリが制限されており、制限がない場合でも、ユーザーはアプリケーションが過剰なメモリを使用することを嫌います。リスト全体をメモリに読み込むのではなく、QContiguousCache を使用してリストを管理することで、アクセスするデータセットのサイズに関係なく、アプリケーションが使用するメモリ量を制限できます | |
XML Bookmark Exchange Language ファイル用のリーダーを提供します | |
「Drill Down」の例では、QSqlRelationalTableModel クラスと QDataWidgetMapper クラスを使用して、データベースからデータを読み込み、変更を送信する方法を示しています。 | |
「Hello Speak」の例では、ユーザーが指定したテキストを読み上げます | |
共有メモリIPCメカニズムを使用して、異なるプロセス間で画像データを共有する方法を示しています | |
MIME タイプの階層構造を示しており、ファイルの MIME タイプを判別するために使用できます | |
「Mandelbrot」の例では、Qt を使用したマルチスレッドプログラミングを実演しています。ワーカースレッドを使用して、メインスレッドのイベントループをブロックすることなく、負荷の高い計算を実行する方法を示しています | |
マスター・ディテール例では、同じアプリケーション内で異なるデータソースからのデータを表示する方法を示しています。アルバムタイトル、およびそれに対応するアーティスト名や発売日はデータベースに格納され、各アルバムのトラックはXMLファイルに保存されています | |
Models and Views: List Model using a worker thread for data fetching | ワーカースレッドを使用してデータを取得し、レスポンシブな UI を備えたリストモデルを実装する方法を示しています |
「Move Blocks」の例では、カスタム遷移を持つ QStateMachine を使用して、QGraphicsScene 内のアイテムにアニメーションを適用する方法を示しています | |
CBOR形式のファイルを解析する方法のデモンストレーション | |
「Ping Pong States」の例では、Qt State Machine フレームワークにおいて、並列状態とカスタムイベントおよび遷移を組み合わせて使用する方法について示しています | |
並行操作の進行状況を監視する方法を示します | |
「セマフォを使用したプロデューサーとコンシューマー」の例では、QSemaphore を使用して、プロデューサースレッドとコンシューマースレッドで共有される循環バッファへのアクセスを制御する方法を示しています | |
「待機条件を使用したプロデューサーとコンシューマー」の例では、QWaitCondition および QMutex を使用して、プロデューサスレッドとコンシューマースレッドで共有される循環バッファへのアクセスを制御する方法を示しています | |
XBEL ファイルの読み取りおよび書き込み方法を示します | |
モデル/ビューアプローチを使用して、OPC UA サーバーのすべてのノードをツリービューで表示する | |
キーおよび証明書署名要求の生成方法を示します | |
QML ローカルストレージのサンプル集 | |
OPC UA サーバーと連携して、単純なウォーターポンプ機用の QML ベースの HMI を構築する | |
Query Model の例では、クエリとテーブルビューをカプセル化したモデルを使用して、SQL クエリから取得したデータをカスタマイズし、結果を表示する方法を示します | |
「Queued Custom Type」の例では、キュー化されたシグナルとスロットを使用して、スレッド間でカスタム型を送信する方法を示しています | |
「Quick Speech」の例では、ユーザーが指定したテキストを読み上げます | |
「リレーショナルテーブルモデル」の例では、リレーショナルモデルとテーブルビューを使用して、データベース内の項目間の関係を可視化する方法を示しています | |
「Rogue」の例では、イベント処理にQt State Machineを使用する方法について説明しています | |
SCXML仕様で提示されている「Calculator」の例を実装したアプリケーション | |
コンパイル済みのネストされたステートマシンを呼び出します | |
C++データモデルとの間でデータの送受信を行います | |
SCXML を使用した個別の JavaScript ファイルの使用例 | |
動的に読み込まれたステートマシンを使用して信号機を実装するQt Quick アプリケーション | |
動的に読み込まれるステートマシンを使用して信号機を実装するウィジェットベースのアプリケーション | |
コンパイル済みステートマシンを使用して簡易な信号機を実装したQt Quick アプリケーション | |
コンパイル済みステートマシンを使用して信号機を実装するQt Quick アプリケーション | |
コンパイル済みステートマシンを使用して信号機を実装するウィジェットベースのアプリケーション | |
SQL Browserのサンプルでは、データブラウザを使用して、稼働中のデータベースに対するSQL文の実行結果を可視化する方法を紹介しています | |
SQL Widget Mapperのサンプルでは、データベースからの地図情報をフォーム上のウィジェットに反映させる方法を示しています | |
QtのJSONまたはCBORクラスを使用してゲームを保存および読み込む方法 | |
異なるシリアライズ形式間の変換方法 | |
「Table Model」の例では、テーブルビューと専用の SQL テーブルモデルを使用して、データベース内の情報を編集する方法を示しています | |
さまざまな実行モードやワークフローポリシーが、複雑な TaskTree の実行にどのような影響を与えるかを示しています | |
TaskTree を使用して、画像を非同期でダウンロードおよび拡大縮小するために、For ループの反復処理を並行して実行する方法を示します | |
信号機のシミュレーションを通じて、TaskTree を使用したステートマシンの動作を実装する方法を解説します | |
「信号機」の例では、Qt State Machine のOverviewを使用して信号機の制御フローを実装する方法を示しています | |
この例では、QtのUndoフレームワークを使用して、元に戻す/やり直し機能を実装する方法を示します | |
OPC UAサーバーと連携し、単純なウォーターポンプ機械用のQMLベースのHMIを構築する | |
単純な水ポンプ機のシミュレーションを実装するOPC UAサーバー | |
Map-Reduceアルゴリズムの使用方法を解説します |
接続性
フォーマット済みの NFC データ交換フォーマット (NDEF) メッセージを読み取ります。 | |
GUI スレッド以外で QSerialPort の同期 API を使用する方法を示します | |
ワーカースレッド内でQSerialPortの同期APIを使用する方法を示します | |
RFCOMMプロトコルを使用したBluetooth通信の方法を示します | |
Bluetooth Low Energy心拍数デバイス/サービスとの連携を実演するゲーム | |
GATTサービスの設定およびアドバタイズ方法を示す例。この例では、周辺機器(スレーブ)機能に関連するQt Bluetooth Low Energyクラスの使用法を示しています | |
Bluetooth Low Energy周辺機器のコンテンツを閲覧するために設計されたアプリケーション。この例では、Qt Bluetooth Low Energyクラスのすべてを使用しています | |
CANバスフレームの送受信を行うサンプル | |
アプリケーションのインスタンス間での通信を実演します | |
Qt D-Bus の型システムの使用方法を示しています | |
D-Busを使用したシンプルなメッセージシステムのデモ | |
Qt D-Bus を使用して、別のアプリケーションから自動車を制御する方法を示しています | |
QLocalSocketを使用した簡単なローカルサービスクライアントの実演 | |
QLocalServerとQLocalSocketを使用した、簡易なローカルサービスの提供を実演する | |
MQTTブローカーと通信するアプリケーションの作成 | |
Modbusクライアントアプリケーションの実装例 | |
カスタムModbus機能コードの処理方法を示す例 | |
Modbusサーバーアプリケーションを実装した例 | |
サーバー上のコンテンツや変更内容を表示する、非常にシンプルなクライアントプログラムの開発 | |
Remote Objectsネットワーク上で利用可能なQTreeViewを表示・変更する簡単なサーバープログラムの開発 | |
NFC ForumタグへのNFCデータ交換フォーマット(NDEF)メッセージの読み取りおよび書き込み | |
Qt Quick コントロールを使用して、MQTTトピックにパブリッシュできるアプリケーションを作成する | |
Qt Quick コントロールを使用して、MQTTトピックを購読できるアプリケーションを作成する | |
QtRemoteObjects での QIODevice ベースではないトランスポート(QWebSocket)の使用 | |
Qt Quick ユーザーインターフェースを使用したマルチキャストリソース検出のためのCoAPクライアントの使用 | |
CoAPクライアントのセキュリティ確保と、Qt Quick ユーザーインターフェースでの使用 | |
QSslSockets を使用したセキュアなリモートオブジェクトネットワークの設定 | |
QSerialPortのさまざまな機能の使用方法を解説 | |
CoAPサーバーと通信するアプリケーションの作成 | |
最小限のテレメトリアプリケーションの作成 | |
最小限の機能を持つリモートオブジェクトサーバーとクライアント | |
サーバーからの時刻オブジェクトのレプリカを保持し、時計に時刻を表示するクライアント | |
接続されたクライアントと時刻オブジェクトを共有するサーバー | |
MQTTクライアントとWebSocket接続の組み合わせ |
ネットワーク
ネットワークリソースを取得して表示する方法の実演 | |
ネットワークサービスのクライアントを作成する方法の実演 | |
ローカルネットワーク上でブロードキャストされた情報を受信する方法の実演 | |
ローカルネットワーク上の複数のクライアントに情報をブロードキャストする方法を解説 | |
OpenAPIジェネレータを使用して、OpenAIモデルと通信するためのRESTful APIクライアントを作成する方法の例 | |
OpenAPIクライアントコードを生成し、アプリケーションに組み込む方法の例 | |
QDnsLookup を使用してホスト名を検索する方法を説明します | |
この例では、クライアント側のDTLS接続を実装する方法を示します | |
この例では、簡単なDTLSサーバーを実装する方法を示します | |
ネットワークサービスのクライアントを作成する方法を示します | |
ネットワークサービスのサーバーを作成する方法を示します | |
簡単なHTTPクライアントの例 | |
画像を非同期でダウンロードし、拡大・縮小する方法について説明します | |
Qt Quick 、Qt Location 、Qt Positioning 、および Qt WebSockets を組み合わせて、地図上に落雷をリアルタイムで表示する、レスポンシブな UI を備えたアプリケーションです。 | |
Qt GRPCクライアントとC++ gRPCサーバー間のHTTP/2接続の構築 | |
クライアント側でのSCTPの使用方法を解説 | |
サーバー側でのSCTPの使用方法を解説します | |
マルチキャストグループに送信された情報を受信する方法を示します | |
マルチキャストグループへのメッセージ送信方法の解説 | |
ステートフルなピアツーピアチャットクライアントの実装例 | |
QML WebSocketクライアントのサンプルを作成する方法を解説します | |
QML WebSocketServer の使用方法を示す簡単な例 | |
Qt GRPC クライアントガイド | |
RESTful API QML クライアントの作成例。 | |
チャットルームであらゆる種類のメッセージを共有するためのチャットアプリケーション | |
RedditにアクセスするためのOAuth 2による認証のデモ | |
ステートマシンを使用したシンプルなFTPクライアントの実装 | |
暗号化された(SSL)接続を介して通信する方法を示しています | |
セキュアWebSockets(wss)を使用したシンプルなクライアントアプリケーション | |
セキュアWebSockets(wss)を介してクライアントに応答するシンプルなサーバー | |
センサーの例:UDPソケットを使用してprotobufメッセージを送信することで、2つのアプリケーションが通信する方法を示しています | |
HTTPサーバーの設定方法に関する簡単な例 | |
WebSocketプロトコルを使用した最小限のチャットアプリケーション | |
TaskTreeを使用して、Forループの反復処理を並列に実行し、画像を非同期でダウンロードしてリサイズする方法を示しています | |
「スレッド化されたFortuneサーバー」の例では、スレッドを使用して異なるクライアントからのリクエストを処理する、シンプルなネットワークサービス用のサーバーを作成する方法を示しています。これは、「Fortuneクライアント」の例と併せて実行することを想定しています | |
複雑な TCP/IP 操作を実演します | |
Qt GRPC クライアントと C++ gRPC サーバー間の 2 つのスレッド化された接続を管理する | |
簡単なWebSocketクライアントアプリケーションの書き方を示します | |
簡単なWebSocketサーバーアプリケーションの書き方を示します |
位置情報とロケーション
GeoJSONビューアの例では、MapItemの操作、ユーザー入力の処理、およびGeoJSONファイルとの入出力の処理方法を示します | |
Qt Quick 、Qt Location 、Qt Positioning 、および Qt WebSockets を組み合わせて、地図上に落雷をリアルタイムで表示する、レスポンシブな UI を備えたアプリケーション。 | |
「Logfile Position Source」では、カスタム位置情報ソースの作成方法と操作方法を示しています。これは、GPSデータのシミュレーションや、データが独自の形式で受信される場合に役立ちます | |
「Map Viewer」のサンプルでは、地図の表示や操作、住所の検索、および経路案内を取得する方法を示しています | |
MapItemView でのトランジションの使用方法 | |
MapItemView を使用して地図を表示するための最小限のコードQt Quick | |
「Places」の例では、場所の検索や関連コンテンツへのアクセス方法を示しています | |
「Places List」の例では、ListView を使用して場所を検索し、そのリストを表示する方法を示しています | |
「Places Map」の例では、MapItemView を使用して場所を検索し、地図上にそのリストを表示する方法を示しています | |
「Plane Spotter」のサンプルでは、位置情報および測位データ型が QML に緊密に統合されている様子を示しています | |
「Satellite Info」の例では、Sky View、Table View、またはRSSI Viewを使用して利用可能な衛星とユーザーの現在位置を表示します。これはQt Positioning で実装されており、Qt Quick | |
「Weather Info」のサンプルでは、Qt Quick 用のC++プラグインにおいて、ユーザーの現在位置を使用してWebサービスからローカルコンテンツを取得する方法を、Qt Positioning |
ユーザーインターフェースコンポーネント
「アドレス帳」の例では、プロキシモデルを使用して、単一のモデルからのデータを異なるビューで表示する方法を示しています | |
Qt Linguist のコンテキストの概念を理解し、2 つ以上の言語を使用する | |
標準のレイアウトマネージャの使用方法を示しています | |
基本的なソート/フィルタモデルの例では、QSortFilterProxyModel を使用して基本的なソートとフィルタリングを行う方法を説明しています | |
この例では、シグナルとスロットを使用して電卓ウィジェットの機能を実装する方法、および QGridLayout を使用して子ウィジェットをグリッドに配置する方法を示しています | |
Calendar Widget の例では、QCalendarWidget の使用方法を示します | |
「コンボウィジェットマッパー」の例では、QDataWidgetMapper を使用して、モデルからの情報をフォーム上の特定のウィジェットにマッピングする方法を示しています | |
「Completer」の例では、モデルから提供されるデータに基づいて、入力ウィジェットに文字列補完機能を提供する方法を示しています | |
QHelpEngineCore クラスを使用して、アプリケーションのコンテキスト依存ヘルプを実装する | |
「カスタムコンプリーター」の例では、モデルから提供されたデータに基づいて入力ウィジェットに文字列補完機能を提供する方法を示しています。コンプリーターは、ユーザーが入力した最初の3文字に基づいて候補となる単語をポップアップ表示し、ユーザーが選択した単語はQTextCursorを使用してTextEditに挿入されます | |
「カスタムソート/フィルタモデル」の例では、QSortFilterProxyModel をサブクラス化して、高度なソートやフィルタリングを実行する方法を示しています | |
「Draggable Icons」の例では、同じアプリケーション内のウィジェット間、および異なるアプリケーション間で画像データをドラッグ&ドロップする方法を示しています | |
ウィジェット間でテキストをドラッグ&ドロップする方法を説明します | |
この例では、ドラッグ&ドロップ操作で利用可能なさまざまな MIME 形式を区別する方法を示しています | |
この例では、モデル/ビューフレームワーク内の他のクラスで使用できる、シンプルなアイテムベースのツリーモデルを実装する方法を示しています | |
「Fetch More」の例では、オンデマンドでアイテムビューモデルにアイテムを追加する方法を示しています | |
さまざまなウィンドウサイズに合わせてウィジェットを配置する方法を示しています | |
この例では、QTableView 内の列を固定する方法を示します | |
Qt Widgets ベースのメモ帳アプリケーションに関するチュートリアル | |
ウィジェットでの簡単なジェスチャーの使用方法を示しています | |
「License Wizard」の例では、Qtで複雑なウィザードを実装する方法を示しています | |
「Line Edits」の例では、QLineEdit のさまざまな使用方法を示し、ユーザーが指定した入力および出力に対する各種プロパティやバリデータの影響を説明しています | |
この例では、CMake およびQt Quick における Qt の翻訳およびローカライズ機能の使用に関するベストプラクティスを示しています。これには、さまざまな言語での複数形の処理、およびローカライズされた日時形式の扱いが含まれます | |
この例では、CMakeおよびQt Quick におけるQtのIDベースの翻訳機能の使用に関するベストプラクティスを示しています。これには、異なる言語での複数形の処理や、ローカライズされた時刻形式の扱いが含まれます | |
この例では、CMakeおよびQt Quick におけるQtの翻訳およびローカライズ機能の使用に関するベストプラクティス、特に実行時にアプリケーションの言語を変更する方法を示しています。これは、より単純な「ローカライズされた時計の例」を拡張したものです | |
「メニュー」の例では、メインウィンドウアプリケーションでメニューをどのように使用できるかを示しています | |
QMLでQAbstractItemModelのサブクラスをモデルとして使用する方法を示します | |
Models and Views: Fetch More functionality using a worker thread | 応答性の高い UI を維持しながら、ワーカースレッドで fetchMore() を実装する方法を示します |
Models and Views: List Model using a worker thread for data fetching | ワーカースレッドを使用してデータを取得し、応答性の高い UI を実現するリストモデルの実装方法を示しています |
QMLでQStringListをモデルとして使用する方法を示します | |
注文フォームの例では、シンプルなテンプレートと、ダイアログでユーザーが入力したデータを組み合わせて、リッチテキスト文書を生成する方法を示しています | |
ページをスクロールできるQt Quick のPDFビューア | |
Qt Quick のPDFビューア(1ページずつ表示) | |
ページをスクロールできるウィジェットベースのPDFビューア | |
QML Dynamic View Ordering Tutorial 1 - A Simple ListView and Delegate | |
QWidget::createWindowContainer() を使用して、Qt Quick とQt Widgets アプリケーションを組み合わせる方法を実演します | |
ネイティブウィンドウとして埋め込まれたQQuickViewと比較して、QQuickWidgetの利点を実演 | |
QRegularExpressionの例では、新しい正規表現を作成し、カスタムテキスト文字列でテストできる環境を提供することで、Qtの正規表現がテキストにどのように適用されるかを示しています | |
Qt Quick コントロールと、簡単な連絡先リストを実装する C++ クラスを使用した QML アプリ | |
シンプルなイベントカレンダー | |
コントロールのギャラリー | |
対話型コンポーネントでQt Quick の入力ハンドラを使用する方法を示します | |
QML Positionerのサンプル集です | |
レイアウトタイプを使用して UI を配置する方法を示しています | |
LayoutItemProxy を使用してレスポンシブな UI を作成する方法を示しています | |
QQuickWidgetクラスを使用して、Qt Quick とQt Widgets アプリケーションを組み合わせる方法を示しています | |
Scribble の例では、アプリケーションのウィジェットに対して生成されたイベントを受け取るために、QWidget のイベントハンドラの一部を再実装する方法を示しています | |
Shortcut Editorの例では、Qtの標準ビューおよびQKeySequenceEditクラスで使用するための、基本的な読み書き可能な階層モデルを作成する方法を示しています。モデル/ビュープログラミングの詳細については、「モデル/ビュープログラミングの概要」を参照してください | |
「Simple Tree Model」の例では、Qtの標準ビュークラスで階層モデルを使用する方法を示しています | |
「Sliders」の例では、Qt で利用可能なさまざまな種類のスライダー(QSlider、QScrollBar、QDial)の使用方法を示しています | |
「スピンボックス」の例では、単純な QSpinBox ウィジェットから、QDateTimeEdit ウィジェットのようなより複雑なエディタに至るまで、Qt で利用可能な多種多様なスピンボックスの使用方法を示しています | |
「スプレッドシート」の例では、簡単なスプレッドシートアプリケーションの作成方法を示しています | |
スプレッドシートアプリケーションの作成方法を解説します | |
「標準ダイアログ」の例では、Qt が提供する標準ダイアログを示しています | |
「Star Delegate」の例では、自身を描画でき、編集機能もサポートするデリゲートの作成方法を示しています | |
StyleKit を使用してカスタムデリゲートやシェーダー効果を活用する方法を示します | |
StyleKit を使用してQt Quick コントロールのスタイルを設定する方法を示します | |
StyleKit を使用してQt Widgets のスタイルを設定する方法を示します | |
「構文ハイライト」の例では、簡単な構文ハイライトの実行方法を示しています | |
「タブダイアログ」の例では、QTabWidget クラスを使用してタブダイアログを構築する方法を示しています | |
この例では、QtアプリケーションでWacomタブレットを使用する方法を示します | |
タッチ入力を受け付けるカスタムコントロールの作成方法を示します | |
この例では、半透明の背景を持つ丸いウィンドウを作成する方法を示しています | |
Tree Model Completer の例では、ピリオドを区切り文字として使用し、Child、GrandChild、GrandGrandChild レベルのオブジェクトにアクセスすることで、階層モデルに補完機能を提供する方法を示しています | |
「Trivial Wizard」の例では、3つのQWizardPageインスタンスと1つのQWizardインスタンスを使用して、3ページからなる直線的な登録ウィザードを作成する方法を説明しています | |
今後のリリースに向けた翻訳の更新 | |
「Dial Control」の例では、スピードメーター型のダイヤルを作成する方法を示しています | |
Flipable の例では、クリックするたびに y 軸を中心に回転して反転するアイテムを示しています | |
「ウィジェットギャラリー」の例では、UI 設計に関連するウィジェットを紹介しています | |
「Window Flags」の例では、Qt で利用可能なウィンドウフラグの使用方法を示しています | |
Qt アプリケーションで Qt 以外の UI 要素をホストする方法のデモ。 |
Web テクノロジー
簡単な HTTP クライアントの実演 | |
XmlListModel および XmlListModelRole というカスタム QML 型を使用して XML データをダウンロードし、ListModel および ListElement を使用してカテゴリリストを作成し、ListView を使用してデータを表示する QML RSS ニュースリーダー。 | |
WebSocket を介して QWebChannel サーバーと通信する HTML/JavaScript クライアント | |
WebSocket 経由で QWebChannel サーバーと通信する QML クライアント | |
QWebChannel C++ API を使用して実装されたシンプルなチャットサーバー | |
サーバーとブラウザ上で動作するリモートクライアント間のシンプルなチャット | |
Qt WebView Examples - A minimal example for a web view in Qt Quick | この例では、Qt WebView モジュールの使用方法を、以下と組み合わせて示しています。Qt Quick |
QHttpServer を使用した RESTful API サーバーの作成例 | |
Webページにカスタムスタイルシートを挿入し、カスタムマークアップ言語用のリッチテキストプレビューツールを提供する | |
HTTPサーバーの設定方法に関する簡単な例 | |
Webコンテンツの読み込みおよび操作方法のデモ | |
Qt WebEngine Widgets に基づく Cookie ブラウザ | |
バックグラウンドのタブをフリーズおよび破棄し、CPUおよびメモリ使用量を削減 | |
HTML5のWeb通知をユーザーに配信する方法を解説 | |
プッシュ通知の購読および購読解除の方法を実演 | |
WebEngineView QML タイプを使用して実装された Web ブラウザ | |
Qt WebEngine および QSslServer を使用した、簡単なクライアント証明書認証のシナリオ | |
を使用してWebページをPDF文書に変換しますQt WebEngine | |
位置情報リクエストの処理方法を示します | |
Webサイトの権限要求への対応方法および既存の権限の管理方法を解説します | |
Qt WebEngine ウィジェットを使用したウェブページの印刷方法のデモ | |
Qt WebEngine Widgets に基づくシンプルなブラウザ | |
シンプルなHTMLフォームにスペルチェッカーを統合する | |
QWebEngineView を使用して動画を全画面表示する |
コミュニティのサンプル
Qt Project が提供するサンプルを閲覧・実行するには、コミュニティのサンプルページにアクセスしてください。
すべてのサンプル
「すべての Qt サンプル」には、所属する Qt モジュールごとに分類されたすべてのサンプルが一覧表示されています。
© 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.