このページでは

その他

これらのコマンドは、ドキュメントの視覚的な外観やドキュメントの生成プロセスに関連する雑多な機能を提供します。

\annotatedlist

\annotatedlist コマンドはグループのメンバーのリストに展開され、各メンバーは簡単なテキストとともにリストされます。以下は Qt Reference Documentation の例です:

/*!
   ...
   \section1 Drag and Drop Classes

   These classes deal with drag and drop and the necessary mime type
   encoding and decoding.

   \annotatedlist draganddrop
*/

これにより、draganddropグループに含まれるすべての C++ クラスや QML タイプのリストが生成されます。draganddropグループに含まれるC++クラスやQML型は、\ingroup draganddropをその \classまたは \qmltypeというコメントを持ちます。

グループのメンバーは、ユーザーから見える名前またはタイトルに基づいて昇順にソートされます。QDoc 6.8以降、\annotatedlist\generatelistはカスタム・ソートもサポートしています。

以下も参照してください \generatelistおよびグループ・メンバーの並べ替えも参照してください。

\cmakepackage

\cmakepackage コマンドを使用して、CMake パッケージ情報をクラスとネームスペースに追加します。この情報は、クラスやネームスペースのドキュメント・ページの上部にある表に表示されます。例えば

/*!
    \namespace Foo
    \inheaderfile Bar
    \cmakepackage Baz
    \brief A namespace.

    ...
*/

QDoc は次のように出力します。

Foo 名前空間

名前空間。詳細...

ヘッダ:#define <バー
CMakeを使う:find_package(Baz 必須)
target_link_libraries(mytarget PRIVATE Baz::Baz)

以下も参照してください。\module\cmakecomponent}

\cmakecomponent

\cmakecomponent コマンドを使用して、CMake コンポーネント情報をクラスとネームスペースに追加します。この情報は、クラスやネームスペースのドキュメント・ページの上部にある表に表示されます。例えば

/*!
    \namespace Foo
    \inheaderfile Bar
    \cmakecomponent Baz
    \brief A namespace.

    ...
*/

QDoc は次のように出力します。

Foo 名前空間

名前空間。詳細...

ヘッダ:#define <バー
CMake:find_package(Qt6 REQUIRED COMPONENTS Baz)
target_link_libraries(mytarget PRIVATE Qt6::Baz) です。

以下も参照してください。\moduleそして \cmakepackage}

\cmaketargetitem

\cmaketargetitem コマンドを使用して、クラスとネームスペースに追加される CMaketarget_link_libraries 情報の項目部分をオーバーライドします。このコマンドは \moduleコマンドと \cmakecomponentコマンドと組み合わせて使用する必要があります。例えば

/*!
    \namespace Foo
    \inheaderfile Bar
    \cmakecomponent Baz
    \cmaketargetitem Qt6::BazPrivate
    \brief A namespace.

    ...
*/

QDocは次のように出力します。

Foo 名前空間

名前空間。詳細...

ヘッダ:#define <バー
CMake:find_package(Qt6 REQUIRED COMPONENTS Baz)
target_link_libraries(mytarget PRIVATE Qt6::BazPrivate) です。

以下も参照してください。\moduleそして \cmakecomponent}

\qtcmakepackage

\qtcmakepackage コマンドを使用して、CMake パッケージ情報をクラスとネームスペースに追加します。この情報は、クラスやネームスペースのドキュメント・ページの上部にある表に表示されます。例えば

/*!
    \namespace Foo
    \inheaderfile Bar
    \qtcmakepackage Baz
    \brief A namespace.

    ...
*/

QDoc は次のように出力します。

Foo 名前空間

名前空間。詳細...

ヘッダ:#define <バー
CMakeでfind_package(Qt6 必須コンポーネント Baz)

\qtcmaketargetitem

\qtcmaketargetitem コマンドを使うと、クラスや名前空間に追加される CMaketarget_link_libraries 情報の項目部分をオーバーライドできます。このコマンドは \moduleコマンドと \qtcmakepackageコマンドと併用する必要があります。

以下も参照してください。\module\qtcmakepackage}

\generatelist

\generatelist コマンドでグループ化されたドキュメント・エンティティへのリンクのリストに展開されます。 \ingroupコマンドでグループ化されたドキュメント・エンティティのリンク・リスト、または以下にリストされた引数のいずれかにマッチするエンティティのリンク・リストに展開されます。Qt Reference Documentation の例:

/*!
   \page classes.html
   \title All Classes

   For a shorter list that only includes the most
   frequently used classes, see \l{Qt's Main Classes}.

   \generatelist classes Q
*/

これはAll Classesページを生成します。このコマンドは以下の引数を受け付けます:

<group-name>

唯一の引数としてグループ名を指定すると、QDoc は\ingroup <group-name> コマンドを使用するすべてのエンティティを一覧表示します。

グループ・メンバーの並べ替え

グループ・メンバーのリストを生成する場合、ユーザーから見える名前またはタイトルに基づいて昇順にソートされます。QDoc 6.8以降、デフォルトのソート順を変更することができます:

\generatelist [descending] changelogs

変更履歴グループが異なるバージョンの変更の詳細ページで構成されていると仮定すると、これは降順(新しいバージョンが最初)でリストを生成します。

ソートキー

QDoc 6.8以降、カスタムソートキーを1つ以上のグループメンバーに割り当てることができます。 \metaコマンドを使って、1つ以上のグループメンバーにカスタムソートキーを割り当てることができます:

\meta sortkey {sort key}

ソート(昇順または降順)は、ユーザーから見えるタイトルではなく、これらのキーに基づいて行われます。

注意: ソート・キーを持つグループ・メンバーは、キーを持たないメンバーの前に表示されます (デフォルトの昇順)。これにより、個々のグループ・メンバーをリストの一番上に上げることができます。

annotatedclasses

annotatedclasses 引数は、すべてのクラスの名前と各クラスの説明を含むテーブルを提供します。各クラス名は、そのクラスのリファレンス・ドキュメントへのリンクです。例えば

QDial丸め範囲コントロール(速度計や電位差計のようなもの)
QDialogダイアログ・ウィンドウの基本クラス
QDirディレクトリ構造とその内容へのアクセス

C++クラスは \classコマンドで文書化されます。クラスの注釈は、クラス・コメントの \briefコマンドの引数から取られます。

annotatedexamples

annotatedexamples 引数は、すべての例のタイトルと各例の説明を含むテーブルのセットとして、すべての例の完全なリストを提供します。各タイトルは例のドキュメントへのリンクです。

モジュールがnavigation.landingpage設定変数を定義していれば、(文書化された例を持っている)各モジュールのための別々のテーブルが生成されます。landingpage変数は、各テーブルの前にあるヘッダーのタイトルとして使われます。

annotatedattributions

annotatedattributions 引数は、すべての属性のタイトルと各属性の説明を含むテーブルのセットとして、すべての属性の完全なリストを提供します。各タイトルは、属性のページへのリンクです。

モジュールがnavigation.landingpage設定変数を定義している場合、(属性を持つ)各モジュールのための別々のテーブルが生成されます。landingpage変数は各テーブルの前にあるヘッダーのタイトルとして使われます。

classes <prefix>

classes 引数はクラスの完全なアルファベット順リストを提供します。2番目の引数、<prefix> は、クラス名の共通接頭辞です。クラス名は、共通接頭辞に続く文字でソートされます。例えば、Qt クラスの共通接頭辞はQ です。共通接頭辞引数は省略可能です。共通接頭辞を省略すると、クラス名は最初の文字でソートされます。

各クラス名は、そのクラスのリファレンス・ドキュメントへのリンクになります。このコマンドは、この方法でAll Classesページを生成するために使用されます:

/*!
    \page classes.html
    \title All Classes
    \ingroup classlists

    \brief Alphabetical list of classes.

    This is a list of all Qt classes. For classes that
    have been deprecated, see the \l{Obsolete Classes}
    list.

    \generatelist classes Q
*/

C++クラスは \classコマンドでドキュメント化されます。

classesbymodule

この引数を使用する場合、2番目の引数が必要で、これはクラスがリストされるモジュールを指定する。QDocはこれらのクラスを含む表を生成する。各クラスは \briefコマンドのテキストとともに表示されます。

例えば、このコマンドはモジュール・ページで次のように使うことができる:

/*!
    \page phonon-module.html
    \module Phonon
    \title Phonon Module
    \ingroup modules

    \brief Contains namespaces and classes for multimedia functionality.

    \generatelist{classesbymodule Phonon}

    ...
*/

指定されたモジュールのメンバである各クラスは、 のコメントで \inmodule\class コマンドをつけなければなりません。

qmltypesbymodule

classesbymodule と似ていますが、第二引数で指定された QML モジュールの QML 型(QML の値型を除く)をリストアップするために使われます。

注: この引数のサポートはQDoc 5.6で導入されました。

qmlvaluetypesbymodule

qmltypesbymodule と似ていますが、代わりにQMLの値型を列挙します。

Note: この引数のサポートはQDoc 6.7で導入されました。

functionindex

functionindex 引数は、文書化されているすべてのメンバ関数の完全なアルファベット順のリストを提供します。通常、この引数はQt関数のインデックスページを生成するためだけに使用されます:

/*!
    \page functions.html
    \title All Functions
    \ingroup funclists

    \brief All documented Qt functions listed alphabetically with a
    link to where each one is declared.

    This is the list of all documented member functions and global
    functions in the Qt API. Each function has a link to the
    class or header file where it is declared and documented.

    \generatelist functionindex
*/

legalese

legalese 引数は、QDoc に現在のドキュメント・プロジェクトのライセンスのリストを生成するように指示します。各ライセンスは \legaleseコマンドを使って特定されます。

overviews

overviews 引数はQDocにすべてのページの内容を連結してリストを生成するように指示するために使用されます。 \groupページの内容を連結してリストを生成するようQDocに指示するために使われます。Qtはこの方法で概要ページを生成します:

/*!
    \page overviews.html

    \title All Overviews and HOWTOs

    \generatelist overviews
*/

attributions

attributions 、QDocにドキュメントの属性リストを生成するように指示します。

related 引数は \groupおよび \ingroupコマンドと組み合わせて使用します。例えば、Programming with Qtページのページはこのように生成されます:

/*!
    \group qt-basic-concepts
    \title Programming with Qt

    \brief The basic architecture of the Qt cross-platform application and UI framework.

    Qt is a cross-platform application and UI framework for
    writing web-enabled applications for desktop, mobile, and
    embedded operating systems. This page contains links to
    articles and overviews explaining key components and
    techniuqes used in Qt development.

    \generatelist {related}
*/

このグループページにリストされている各ページはコマンドを含んでいます:

\ingroup qt-basic-concepts

参照 \annotatedlist.

\if

\if コマンドと対応する\endif コマンドは、コマンドの引数で指定された条件が真である場合にのみ含まれるQDocコメントの一部を囲みます。

コマンドは残りの行を読み、C++の#if文として解析します。

/*!
   \if defined(opensourceedition)

   \note This edition is for the development of
   \l{Qt Open Source Edition} {Free and Open Source}
   software only; see \l{Qt Commercial Editions}.

   \endif
*/

このQDocコメントは、opensourceedition プリプロセッサ・シンボルが定義されていて、QDocに#ifdefと#endif内のコードを処理させるために設定ファイルのdefines変数で指定されている場合にのみレンダリングされます:

defines = opensourceedition

コマンドラインで手動でプリプロセッサ・シンボルを定義することもできます。詳細はdefines変数のドキュメントを参照してください。

また \endif, \elsedefinesと falsehoodsも参照のこと。

\endif

\endif コマンドと対応する\if コマンドはQDocコメントの一部を囲みます。 \ifコマンドの引数で指定された条件が真である場合に含まれるQDocコメントの一部を囲みます。

詳細は \ifコマンドのドキュメントを参照してください。

また \if, \else定義と 虚偽も参照のこと。

\else

\else\ifコマンドの条件が偽の場合、代替案を指定する。

\else コマンドは\if... \endif コマンドの中でしか使えないが、選択肢が2つしかない場合に便利である。

\include

\include コマンドはその第1引数で指定されたファイルの全部または一部をQDoc入力ストリームに送り、QDocコメントスニペットとして処理させます。

このコマンドはコマンドやテキストのスニペットをドキュメントの複数の場所で使いたいときに便利です。ドキュメントにスニペットを挿入したい場合は、\include コマンドを使用してください。インクルードするスニペットを含むファイルは、sourcedirsまたはexampledirsQDoc設定変数にリストされているパスの下になければなりません。それはQDocによって解析されたソースファイル(または\include コマンドが使用されたものと同じもの)、または他のテキストファイルのいずれでもかまいません。QDocによって解析されることを意図していない別のファイルにスニペットを保存するには、sources.fileextensionsにリストされていないファイル拡張子を使用します。例えば、.qdocinc

コマンドには1つ以上の引数を指定できます。最初の引数は常にファイル名です。ファイルの内容はQDoc入力でなければなりません。言い換えると、QDocコマンドとテキストのシーケンスですが、QDocコメント/*! ...*/ 区切りは含まれません。名前付きファイル全体を含めたい場合は、2番目の引数を空にしてください。ファイルの一部分のみをインクルードしたい場合は、以下の2つの引数の形式を参照してください。以下は1つの引数の例である:

/*!
    \page corefeatures.html
    \title Core Features

    \include examples/signalandslots.qdocinc
    \include examples/objectmodel.qdocinc
    \include examples/layoutmanagement.qdocinc
*/

\include ファイル名 スニペット識別子

ドキュメントの複数の場所で使いたいQDocのインクルード・スニペットごとに.qdocinc 。インクルードするスニペットが複数ある場合は、それらをすべて1つのファイルにまとめて、それぞれを:

//! [snippet-id1]

QDoc commands and text...

//! [snippet-id1]

//! [snippet-id2]

More QDoc commands and text...

//! [snippet-id2]

そうすれば、2つの引数を持つコマンドを使うことができます:

\include examples/signalandslots.qdocinc snippet-id2
\include examples/objectmodel.qdocinc another-snippet-id

QDocコマンドのシーケンスと、第2引数と同じ名前の2つのタグの間に見つかったテキストがQDoc入力ストリームに送られます。スニペットを入れ子にすることもできます。

注: スニペット識別子はドキュメント・コメント(/*! ... */)ブロック内でも機能するので、.qdocinc ファイルを別に使う必要はありません。コメント・ブロックを処理するとき、QDocは生成された出力から//! コメント行を削除します。

追加引数

QDoc 6.3以降、\include コマンドに渡される追加引数は、インクルードされたコンテンツに文字列を注入するために使われます。コンテンツの特定の場所に文字列を挿入するには、バックスラッシュの後に数字(1..9)を追加します。数字は引数リストの順番に対応する。引数を中かっこで囲むと、QDocが期待通りに空白文字を含む引数全体をレンダリングします。

重要: 追加の各引数(スニペットIDを含む)は中括弧で囲む必要があります。ファイル全体を含める場合は、空のスニペットIDを使用してください:{}.

例えば、ファイルincludes.qdocinc に以下のスニペットがあるとします:

//! [usage]
To enable \e{\1}, select \uicontrol {\2} > \uicontrol Enable.
//! [usage]

そして、次の\include

\include includes.qdocinc {usage} {detailed output} {Verbose}

レンダリング

詳細出力を有効にするには、Verbose >Enable を選択します。

\meta

\meta コマンドは、ドキュメントにメタデータを追加するために使用されます。コマンドには2つの引数があります:最初の引数はメタデータの属性名で、2番目の引数は属性の値です。各引数は、この例に示すように、中かっこで囲む必要があります:

/*!
    \example demos/coffee
    \title Coffee Machine
    \brief A Qt Quick application with a state-based custom user interface.

    \meta {tags} {quick,embedded,states,touch}
    \meta {category} {Application Examples}
*/

多くのメタデータ属性は特定の目的を持っています:

メタデータの例

\meta コマンドのもう一つの使い方は、メタデータ(タグ)をドキュメントに含めることです。 \exampleドキュメントに含めることです。デフォルトでは、QDocはサンプルの \titleとモジュール名に基づいて生成されます。これらのタグはQt Creator のウェルカムモードで表示され、ユーザーがサンプルのリストをナビゲートするのに役立ちます。

追加のタグは\meta {tag} {tag1} または\meta {tags} {tag1,[tag2,...]} で作成できます。例えば

/*!
    \example helloworld
    \title Hello World Example
    \meta {tags} {tutorial,basic}
*/

この場合、次のようなタグになります:tutorial,basic,hello,worldexampleのような一般的な単語は無視されます。

例の除外

サンプルを破棄マークすると、生成されるマニフェストファイルから除外され、Qt Creator の Welcome モードから効果的に除外されます。

\meta {tag} {broken}

例のインストールパス

引数installpath と組み合わせた\meta コマンドは、インストールされるサンプルの場所を指定します。この値は、examplesinstallpath コンフィギュレーション変数を使用して設定された値を上書きします。

/*!
    \example helloworld
    \title Hello World Example
    \meta {installpath} {tutorials}
*/

examplesinstallpathも参照してください。

ステータス

\meta コマンドのstatus 引数は、カスタムステータスの説明を \classまたは \qmltype.この説明は、タイプ・リファレンス・ページの一番上の表に表示される。

/*!
    \class QNativeInterface::QAndroidApplication
    \meta {status} {Android-specific}
*/

ステータス関連コマンドも参照のこと。

文書のメタデータ

\meta コマンドのkeywords 引数は、生成されるドキュメントのメタデータとして指定されたキーワードを追加します:

\meta {keywords} {reference, internal}

HTML出力では、これらのキーワードは<meta name="keywords" content="..."> 要素として生成される。

\noautolist

\noautolist コマンドは、C++ または QML モジュールページの下部に自動的に生成される C++ クラスまたは QML タイプの注釈付きリストを省略することを示します。このコマンドは \groupコマンドと組み合わせて使用することもできます。

このコマンドはそれ自身の行に記述する必要があります。例として Qt Quick Controls QML Typesを参照のこと。このページはqtquickcontrols2-qmlmodule.qdoc から生成されます。そこにはQtQuick.Controlsモジュールのための\qmlmodule コマンドを含むQDocコメントがあります。同じコメントには\noautolist 自動リスト生成を無効にするコマンドと \generatelistで、ドキュメントの特定のセクションのQMLタイプをリストアップします。

このコマンドはQDoc 5.6で導入されました。

Qt 5.10以降、このコマンドはドキュメントにも適用できるようになりました。 \exampleドキュメントにも適用でき、サンプルプロジェクトに属するファイルやイメージの自動生成リストが省略されます。

\omit

\omit コマンドと、それに対応する\endomit コマンドは、QDoc にスキップさせたいドキュメントの部分を区切ります。例えば

/*!
    \table
    \row
        \li Basic Widgets
        \li Basic GUI widgets such as buttons, comboboxes
           and scrollbars.

    \omit
    \row
        \li Component Model
        \li Interfaces and helper classes for the Qt
           Component Model.
    \endomit

    \row
        \li Database Classes
        \li Database related classes, e.g. for SQL databases.
    \endtable
*/

\raw (避ける)

\raw コマンドと対応する\endraw コマンドは、生のマークアップ言語コードのブロックを区切ります。

警告: 可能であれば、このコマンドの使用は避けてください。特別なテーブルやリストの動作を生成しようとしている場合は \span\divコマンドを使う。 \tableまたは \list.

コマンドはコードのフォーマットを指定する引数を取る。

QDocはユーザーによって指定されたフォーマットを生成するときのみ、指定されたコードを生成します。

例えば、"\raw HTML "はQDocがHTMLドキュメントを生成するときだけコードを生成します。

注意: QDocコマンドを使うことで、間違いやコンテンツがメンテナンスされなくなる可能性を減らしながら、意図した目的を達成できることがよくあります。

\sincelist

\sincelist コマンドは、指定されたバージョンでドキュメント化されたAPIに新しく含まれるものの詳細な内訳に展開します。使用例:

/*!
   \page newclasses611.html
   \title New Classes and Functions in 6.11
   \brief A comprehensive list of new classes and functions in 6.11.

   \sincelist 6.11
*/

\sincelistは引数1つ、バージョン文字列を取る。生成される出力には、バージョン文字列と一致する \sinceコマンドかsince節がバージョン文字列にマッチする全ての機能が含まれます。

\unicode

\unicode 、文書中に任意のUnicode文字を挿入することができます。

このコマンドは、文字を整数で指定する引数を取ります。デフォルトでは、'0x'または'0'の接頭辞が指定されない限り、基数10が仮定されます(それぞれ基数16と8の場合)。

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