Active Qt
QtのActiveXおよびCOMサポートにより、Windows向けQt開発者は以下のことが可能になります:
- Qtアプリケーション内で、任意のActiveXサーバーが提供するActiveXコントロールやCOMオブジェクトにアクセスし、それらを利用できます。
- 任意の数の Qt オブジェクトやウィジェットを COM オブジェクトや ActiveX コントロールとして登録し、Qt アプリケーションを COM サーバーとして提供できます。
Qt での ActiveX の使用に関する詳細については、「Qt での ActiveX サーバーの構築」を参照してください。
ActiveQt フレームワークは、2 つのモジュールで構成されています:
- QAxContainerモジュールは、QObject のサブクラスであるQAxObject と、QWidget のサブクラスであるQAxWidget を実装する静的ライブラリであり、これらはCOMオブジェクトやActiveXコントロールのコンテナとして機能します。
- QAxServerモジュールは、インプロセスおよび実行可能COMサーバーの機能を実装する静的ライブラリです。このモジュールは、QAxAggregated 、QAxBindable 、およびQAxFactory クラスを提供します。
ActiveX を使用する Qt プロジェクトの開発およびビルドを簡略化するための一連のツールが提供されています。
モジュールの使用方法
QtモジュールのC++ APIを使用するには、モジュールライブラリに対して、直接または他の依存関係を通じてリンクを行う必要があります。CMakeやqmakeなど、いくつかのビルドツールでは、このための専用のサポートが提供されています。
CMake を使用したビルド
find_package() コマンドを使用して、Qt6 パッケージ内から必要なモジュールコンポーネントを特定します:
find_package(Qt6 REQUIRED COMPONENTS AxContainer AxServer)
target_link_libraries(mytarget PRIVATE Qt6::AxContainer Qt6::AxServer)詳細については、「CMake によるビルド」の概要を参照してください。
qmake を使用したビルド
qmake を使用してビルドするためにモジュールを設定するには、プロジェクトの .pro ファイル内の `QT ` 変数の値としてそのモジュールを追加します。
QT += axcontainer axserver記事とガイド
サンプル
リファレンス
ライセンスとクレジット
QAxContainer およびQAxServer モジュールは、The Qt Companyから商用ライセンスの下で提供されています。また、これらはBSD 3条項「New」または「Revised」ライセンスの下でも利用可能です。
詳細については、「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.