Sur cette page

QHelpSearchEngine Class

La classe QHelpSearchEngine donne accès à des widgets réutilisables pour intégrer la recherche plein texte ainsi que pour indexer et rechercher de la documentation. Plus d'informations...

En-tête : #include <QHelpSearchEngine>
CMake : find_package(Qt6 REQUIRED COMPONENTS Help)
target_link_libraries(mytarget PRIVATE Qt6::Help)
qmake : QT += help
Héritages : QObject

Fonctions publiques

QHelpSearchEngine(QHelpEngineCore *helpEngine, QObject *parent = nullptr)
virtual ~QHelpSearchEngine()
QHelpSearchQueryWidget *queryWidget()
QHelpSearchResultWidget *resultWidget()
QString searchInput() const
int searchResultCount() const
QList<QHelpSearchResult> searchResults(int start, int end) const

Emplacements publics

void cancelIndexing()
void cancelSearching()
void reindexDocumentation()
void search(const QString &searchInput)

Signaux

void indexingFinished()
void indexingStarted()
void searchingFinished(int searchResultCount)
void searchingStarted()

Description détaillée

Avant de pouvoir utiliser le moteur de recherche, il faut instancier au moins un objet QHelpEngineCore qui doit être transmis au constructeur du moteur de recherche. En effet, le moteur de recherche doit être connecté au signal setupFinished() du moteur d'aide pour savoir quand il peut commencer à indexer la documentation.

Après le démarrage du processus d'indexation, le signal indexingStarted() est émis et à la fin du processus d'indexation, le signal indexingFinished() est émis. Pour arrêter l'indexation, on peut appeler cancelIndexing().

Lorsque le processus d'indexation est terminé, le moteur de recherche peut être utilisé pour rechercher un terme donné dans l'index à l'aide de la fonction search(). Lorsque l'entrée de recherche est transmise au moteur de recherche, le signal searchingStarted() est émis. Lorsque la recherche est terminée, le signal searchingFinished() est émis. Le processus de recherche peut être arrêté en appelant cancelSearching().

Si la recherche aboutit, la fonction searchingFinished() est appelée avec le nombre de résultats de la recherche pour récupérer les résultats du moteur de recherche. L'appel de la fonction searchResults() avec un intervalle renvoie une liste d'objets QHelpSearchResult dans l'intervalle. Les résultats comprennent le titre et l'URL du document, ainsi qu'un extrait du document qui contient la meilleure correspondance avec l'entrée de la recherche.

Pour afficher les résultats de la recherche, utilisez la page QHelpSearchResultWidget ou créez votre propre page si vous avez besoin d'une fonctionnalité plus avancée. Notez que le QHelpSearchResultWidget ne peut pas être instancié directement, vous devez récupérer le widget à partir du moteur de recherche utilisé car toutes les connexions seront établies pour vous par le widget lui-même.

Documentation des fonctions membres

[explicit] QHelpSearchEngine::QHelpSearchEngine(QHelpEngineCore *helpEngine, QObject *parent = nullptr)

Construit un nouveau moteur de recherche avec l'adresse parent. Le moteur de recherche utilise l'adresse helpEngine pour accéder à la documentation qui doit être indexée. Le signal setupFinished() de QHelpEngine est automatiquement connecté à la fonction d'indexation de QHelpSearchEngine, de sorte que la nouvelle documentation sera indexée après l'émission du signal.

[virtual noexcept] QHelpSearchEngine::~QHelpSearchEngine()

Détruit le moteur de recherche.

[slot] void QHelpSearchEngine::cancelIndexing()

Arrête le processus d'indexation.

[slot] void QHelpSearchEngine::cancelSearching()

Arrête le processus de recherche.

[signal] void QHelpSearchEngine::indexingFinished()

Ce signal est émis lorsque le processus d'indexation est terminé.

[signal] void QHelpSearchEngine::indexingStarted()

Ce signal est émis lorsque le processus d'indexation est lancé.

QHelpSearchQueryWidget *QHelpSearchEngine::queryWidget()

Renvoie un widget à utiliser comme widget d'entrée. Selon la configuration de votre moteur de recherche, vous obtiendrez un widget différent avec plus ou moins de sous-widgets.

[slot] void QHelpSearchEngine::reindexDocumentation()

Force le moteur de recherche à réindexer tous les fichiers de documentation.

QHelpSearchResultWidget *QHelpSearchEngine::resultWidget()

Renvoie un widget qui peut contenir et afficher les résultats de la recherche.

[slot] void QHelpSearchEngine::search(const QString &searchInput)

Lance le processus de recherche en utilisant la phrase de recherche donnée searchInput.

L'expression peut être composée de plusieurs mots. Par défaut, le moteur de recherche renvoie la liste des documents qui contiennent tous les mots spécifiés. La phrase peut contenir n'importe quelle combinaison des opérateurs logiques AND, OR et NOT. L'opérateur doit être écrit en majuscules, sinon il sera considéré comme faisant partie de la phrase de recherche.

Si des guillemets doubles sont utilisés pour regrouper les mots, le moteur de recherche recherchera une correspondance exacte avec l'expression citée.

Pour plus d'informations sur la syntaxe des requêtes textuelles, voir SQLite FTS5 Extension.

Note : Ce slot est surchargé. Pour se connecter à ce slot :

// Connect using qOverload:
connect(sender, &SenderClass::signal,
        helpSearchEngine, qOverload(&QHelpSearchEngine::search));

// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
        helpSearchEngine, [receiver = helpSearchEngine](const QString &searchInput) { receiver->search(searchInput); });
Pour plus d'exemples et d'approches, voir Connexion aux slots surchargés.

QString QHelpSearchEngine::searchInput() const

Renvoie la dernière phrase recherchée.

int QHelpSearchEngine::searchResultCount() const

Renvoie le nombre de résultats trouvés par le moteur de recherche.

QList<QHelpSearchResult> QHelpSearchEngine::searchResults(int start, int end) const

Renvoie une liste de résultats de recherche dans l'intervalle allant de l'index spécifié par start à l'index spécifié par end.

[signal] void QHelpSearchEngine::searchingFinished(int searchResultCount)

Ce signal est émis lorsque le processus de recherche est terminé. Le nombre de résultats de la recherche est stocké dans searchResultCount.

[signal] void QHelpSearchEngine::searchingStarted()

Ce signal est émis lorsque le processus de recherche est lancé.

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