このページでは

Qt 対応言語

Qt API は C++ で実装されており、クロスプラットフォーム開発を容易にする追加機能を提供しています。 Qt は、JavaScript を基盤として構築された独自の宣言型言語である QML、および QML を基盤として構築されたフレームワークであるQt Quick をサポートしています。これは、プログラムのユーザーインターフェース、つまりその外観や動作を記述するために設計されています。C++ の代替として、Python 用の Qt バインディングが Qt for Python。

C++

Qtフレームワークは、非常に直感的でモジュール化されたC++ライブラリクラスの包括的なセットを含んでおり、アプリケーション開発を簡素化するAPIが充実しています。Qtは、C++開発のための豊富なアプリケーション構成要素を備えた直感的なC++クラスライブラリを提供し、C++に以下の機能を追加します:

QML

Qt Qml は、QML言語を用いたアプリケーションやライブラリの開発のためのフレームワークを提供します。このフレームワークは、言語およびエンジンのインフラストラクチャを定義・実装するとともに、カスタム型によるQML言語の拡張や、QMLコードとJavaScriptおよびC++との統合を可能にするAPIを提供します。Qt Qml モジュールは、QML API とC++ API の両方を提供します。

この Qt Qml このモジュールは、QMLアプリケーションのための言語とインフラストラクチャを提供します。 Qt Quick モジュールは、ユーザーインターフェースを構築するために、多数のビジュアルコンポーネント、モデル・ビューのサポート、アニメーションフレームワークなどを提供します。

QML言語を使用すると、JSONに似た構文でオブジェクトのツリーを定義できます。また、JavaScriptでロジックを実装することも可能です。

QML アプリケーション向けの JavaScript

JavaScript式を使用することで、QMLコードにアプリケーションロジックを組み込むことができます。Qt Qml は、QML内およびC++からJavaScript式を実行するためのフレームワークを提供します。以下の機能をサポートしています:

  • ユーザーインターフェースとアプリケーションロジックの両方を迅速に開発できます。
  • QMLが提供するJavaScriptホスト環境。これは、標準の第7版で規定されている有効なJavaScriptに加え、それ以降の標準による一部の拡張機能も実行可能です。
  • JavaScript 内からのオブジェクトの動的生成。これは、オブジェクトのインスタンス化を必要な時まで遅らせるのに役立ち、それによってアプリケーションの起動時間を短縮できます。

Qt for Python

Qt for Python Qt用の公式Pythonバインディングを提供しており、Pythonを使用してQtアプリケーションを作成できます。このプロジェクトには以下のコンポーネントが含まれます:

  • PySide6: Qt 6用の公式Pythonバインディング
  • Shiboken6: C++ コードを Python から利用可能にするバインディング生成ツール
  • ツール群:PySide6を用いたアプリケーション開発を容易にするためのツール
  • Shiboken モジュール:デバッグ用のユーティリティ関数を提供します

© 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.