Auf dieser Seite

QHelpSearchEngine Class

Die Klasse „QHelpSearchEngine“ bietet Zugriff auf wiederverwendbare Widgets zur Integration einer Volltextsuche sowie zur Indizierung und Suche in der Dokumentation. Mehr...

Header: #include <QHelpSearchEngine>
CMake: find_package(Qt6 REQUIRED COMPONENTS Help)
target_link_libraries(mytarget PRIVATE Qt6::Help)
qmake: QT += help
Erbt von: QObject

Öffentliche Funktionen

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

Öffentliche Slots

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

Signale

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

Ausführliche Beschreibung

Bevor die Suchmaschine verwendet werden kann, muss mindestens ein ` QHelpEngineCore `-Objekt instanziiert werden, das an den Konstruktor der Suchmaschine übergeben werden muss. Dies ist erforderlich, da die Suchmaschine mit dem Signal `setupFinished()` der Hilfe-Engine verbunden sein muss, um zu wissen, wann sie mit der Indizierung der Dokumentation beginnen kann.

Nach dem Start des Indizierungsprozesses wird das Signal „ indexingStarted()“ ausgesendet, und am Ende des Indizierungsprozesses wird das Signal „ indexingFinished()“ ausgesendet. Um die Indizierung zu stoppen, kann man „ cancelIndexing()“ aufrufen.

Ist der Indizierungsprozess abgeschlossen, kann die Suchmaschine mithilfe der Funktion ` search()` dazu verwendet werden, den Index nach einem bestimmten Begriff zu durchsuchen. Wenn die Suchanfrage an die Suchmaschine übergeben wird, wird das Signal ` searchingStarted()` ausgesendet. Nach Abschluss der Suche wird das Signal ` searchingFinished()` ausgesendet. Der Suchvorgang kann durch Aufruf von ` cancelSearching()` gestoppt werden.

Ist die Suche erfolgreich, wird „ searchingFinished()“ mit der Anzahl der Suchergebnisse aufgerufen, um die Suchergebnisse von der Suchmaschine abzurufen. Der Aufruf der Funktion „ searchResults()“ mit einem Bereich gibt eine Liste von „ QHelpSearchResult “-Objekten innerhalb dieses Bereichs zurück. Die Ergebnisse bestehen aus dem Dokumenttitel und der URL sowie einem Ausschnitt aus dem Dokument, der die beste Übereinstimmung mit der Sucheingabe enthält.

Um die angezeigten Suchergebnisse darzustellen, verwenden Sie das „ QHelpSearchResultWidget “ oder erstellen Sie bei Bedarf einen eigenen, falls Sie erweiterte Funktionen benötigen. Beachten Sie, dass das „ QHelpSearchResultWidget “ nicht direkt instanziiert werden kann; Sie müssen das Widget von der verwendeten Suchmaschine abrufen, da alle Verbindungen vom Widget selbst für Sie hergestellt werden.

Dokumentation der Member-Funktionen

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

Erstellt eine neue Suchmaschine mit der angegebenen „ parent “. Die Suchmaschine nutzt die angegebene „ helpEngine “, um auf die zu indizierende Dokumentation zuzugreifen. Das Signal „setupFinished()“ von „ QHelpEngine “ wird automatisch mit der Indizierungsfunktion der „QHelpSearchEngine“ verknüpft, sodass neue Dokumentation nach dem Auslösen des Signals indiziert wird.

[virtual noexcept] QHelpSearchEngine::~QHelpSearchEngine()

Zerstört die Suchmaschine.

[slot] void QHelpSearchEngine::cancelIndexing()

Beendet den Indizierungsprozess.

[slot] void QHelpSearchEngine::cancelSearching()

Beendet den Suchvorgang.

[signal] void QHelpSearchEngine::indexingFinished()

Dieses Signal wird ausgegeben, wenn der Indizierungsprozess abgeschlossen ist.

[signal] void QHelpSearchEngine::indexingStarted()

Dieses Signal wird ausgesendet, wenn der Indizierungsprozess gestartet wird.

QHelpSearchQueryWidget *QHelpSearchEngine::queryWidget()

Gibt ein Widget zurück, das als Eingabe-Widget verwendet werden kann. Je nach Konfiguration Ihrer Suchmaschine erhalten Sie ein anderes Widget mit mehr oder weniger Unter-Widgets.

[slot] void QHelpSearchEngine::reindexDocumentation()

Zwingt die Suchmaschine dazu, alle Dokumentationsdateien neu zu indizieren.

QHelpSearchResultWidget *QHelpSearchEngine::resultWidget()

Gibt ein Widget zurück, das die Suchergebnisse aufnehmen und anzeigen kann.

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

Startet den Suchvorgang mit dem angegebenen Suchbegriff „ searchInput “.

Der Suchbegriff kann aus mehreren Wörtern bestehen. Standardmäßig gibt die Suchmaschine eine Liste der Dokumente zurück, die alle angegebenen Wörter enthalten. Der Suchbegriff kann beliebige Kombinationen der logischen Operatoren AND, OR und NOT enthalten. Der Operator muss in Großbuchstaben geschrieben werden, andernfalls wird er als Teil des Suchbegriffs betrachtet.

Werden doppelte Anführungszeichen zur Gruppierung der Wörter verwendet, sucht die Suchmaschine nach einer exakten Übereinstimmung mit der in Anführungszeichen gesetzten Phrase.

Weitere Informationen zur Syntax von Textabfragen finden Sie unter SQLite FTS5-Erweiterung.

Hinweis: Dieser Slot ist überladen. So stellen Sie eine Verbindung zu diesem Slot her:

// 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); });
Weitere Beispiele und Vorgehensweisen finden Sie unter „Verbindung zu überladenen Slots herstellen“.

QString QHelpSearchEngine::searchInput() const

Gibt den zuletzt gesuchten Ausdruck zurück.

int QHelpSearchEngine::searchResultCount() const

Gibt die Anzahl der Ergebnisse zurück, die die Suchmaschine gefunden hat.

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

Gibt eine Liste mit Suchergebnissen im Bereich vom durch ` start ` angegebenen Index bis zum durch ` end` angegebenen Index zurück.

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

Dieses Signal wird ausgegeben, wenn der Suchvorgang abgeschlossen ist. Die Anzahl der Suchergebnisse wird in „ searchResultCount “ gespeichert.

[signal] void QHelpSearchEngine::searchingStarted()

Dieses Signal wird ausgesendet, wenn der Suchvorgang gestartet wird.

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