QToolTip Class
Die Klasse QToolTip liefert Tooltips (Sprechblasenhilfe) für jedes Widget. Mehr...
Kopfzeile: | #include <QToolTip> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
- Liste aller Mitglieder, einschließlich vererbter Mitglieder
- QToolTip ist Teil des Hilfesystems.
Statische öffentliche Mitglieder
QFont | font() |
void | hideText() |
bool | isVisible() |
QPalette | palette() |
void | setFont(const QFont &font) |
void | setPalette(const QPalette &palette) |
void | showText(const QPoint &pos, const QString &text, QWidget *w = nullptr, const QRect &rect = {}, int msecDisplayTime = -1) |
QString | text() |
Detaillierte Beschreibung
Der Tip ist ein kurzes Stück Text, das den Benutzer an die Funktion des Widgets erinnert. Er wird direkt unter der angegebenen Position in einer markanten Schwarz-auf-Gelb-Farbkombination gezeichnet. Der Tipp kann eine beliebige rich text formatierte Zeichenfolge sein.
Rich-Text, der in einem Tooltip angezeigt wird, wird implizit mit einem Wortumbruch versehen, es sei denn, es wird mit <p style='white-space:pre'>
anders angegeben.
UI-Elemente, die über QAction erstellt werden, verwenden die Tooltip-Eigenschaft von QAction. Für die meisten interaktiven UI-Elemente ist es daher am einfachsten, diese Eigenschaft zu setzen, um Tooltips bereitzustellen.
QAction *openAction = new QAction(tr("&Open...")); openAction->setToolTip(tr("Open an existing file")); fileMenu = menuBar()->addMenu(tr("&File")); fileToolBar = addToolBar(tr("&File")); fileMenu->addAction(openAction); fileToolBar->addAction(openAction);
Für alle anderen Widgets ist der einfachste und gebräuchlichste Weg, den Tooltip eines Widgets zu setzen, der Aufruf seiner Funktion QWidget::setToolTip().
searchBar = new SearchBar; searchBar->setToolTip(tr("Search in the current document"));
Es ist auch möglich, verschiedene Tooltips für verschiedene Bereiche eines Widgets anzuzeigen, indem man ein QHelpEvent vom Typ QEvent::ToolTip verwendet. Fangen Sie das Hilfe-Ereignis in der Funktion event() Ihres Widgets ab und rufen Sie QToolTip::showText() mit dem Text auf, den Sie anzeigen möchten.
bool Window::event(QEvent *event) { if (event->type() == QEvent::ToolTip) { QHelpEvent *helpEvent = static_cast<QHelpEvent *>(event); if (Element *element = elementAt(helpEvent->pos())) { QToolTip::showText(helpEvent->globalPos(), element->toolTip()); } else { QToolTip::hideText(); event->ignore(); } return true; } return QWidget::event(event); }
Wenn Sie QToolTip::hideText() oder QToolTip::showText() mit einer leeren Zeichenkette als Ergebnis eines ToolTip-Ereignisses aufrufen, sollten Sie auch ignore() auf das Ereignis aufrufen, um zu signalisieren, dass Sie keine tooltip-spezifischen Modi starten wollen.
Beachten Sie, dass, wenn Sie Tooltips in einer Item-Ansicht anzeigen wollen, die Model/View-Architektur Funktionalität bietet, um den Tooltip eines Items zu setzen; z.B. die QTableWidgetItem::setToolTip() Funktion. Wenn Sie jedoch benutzerdefinierte Tooltips in einer Elementansicht bereitstellen möchten, müssen Sie das Hilfe-Ereignis in der Funktion QAbstractItemView::viewportEvent() abfangen und es selbst behandeln.
Die Standardfarbe und -schriftart der QuickInfo kann mit setPalette() und setFont() angepasst werden. Wenn ein Tooltip gerade angezeigt wird, gibt isVisible() true
und text() den gerade sichtbaren Text zurück.
Hinweis: Tooltips verwenden die inaktive Farbgruppe von QPalette, da Tooltips keine aktiven Fenster sind.
Siehe auch QWidget::toolTip und QAction::toolTip.
Dokumentation der Mitgliedsfunktionen
[static]
QFont QToolTip::font()
Gibt die Schriftart zurück, die für die Darstellung von Tooltips verwendet wird.
Siehe auch setFont().
[static]
void QToolTip::hideText()
Blendet den Tooltip aus. Dies ist dasselbe wie der Aufruf von showText() mit einer leeren Zeichenkette.
Siehe auch showText().
[static]
bool QToolTip::isVisible()
Gibt true
zurück, wenn gerade ein Tooltip angezeigt wird.
Siehe auch showText().
[static]
QPalette QToolTip::palette()
Gibt die Palette zurück, die für die Darstellung von Tooltips verwendet wird.
Hinweis: Tooltips verwenden die inaktive Farbgruppe von QPalette, da Tooltips keine aktiven Fenster sind.
Siehe auch setPalette().
[static]
void QToolTip::setFont(const QFont &font)
Legt die font fest, die zur Darstellung von Tooltips verwendet wird.
Siehe auch font().
[static]
void QToolTip::setPalette(const QPalette &palette)
Legt die palette fest, die zum Rendern von Tooltips verwendet wird.
Hinweis: Tooltips verwenden die inaktive Farbgruppe von QPalette, da Tooltips keine aktiven Fenster sind.
Siehe auch palette().
[static]
void QToolTip::showText(const QPoint &pos, const QString &text, QWidget *w = nullptr, const QRect &rect = {}, int msecDisplayTime = -1)
Zeigt text als Tooltip an, mit der globalen Position pos als Interessenpunkt. Der Tooltip wird mit einem plattformspezifischen Versatz von diesem Interessenpunkt aus angezeigt.
Wenn Sie ein nicht leeres Rect angeben, wird die Spitze ausgeblendet, sobald Sie den Cursor aus diesem Bereich herausbewegen.
Das rect liegt in den Koordinaten des Widgets, das Sie mit w angeben. Wenn rect nicht leer ist, müssen Sie ein Widget angeben. Andernfalls kann dieses Argument nullptr
lauten, wird aber zur Bestimmung des geeigneten Bildschirms auf Systemen mit mehreren Köpfen verwendet.
Der Parameter msecDisplayTime gibt an, wie lange der Tooltip angezeigt wird (in Millisekunden). Mit dem Standardwert -1 richtet sich die Zeit nach der Länge des Textes.
Wenn text leer ist, wird der Tooltip ausgeblendet. Wenn der Text derselbe ist wie der aktuell angezeigte Tooltip, wird der Tipp nicht verschoben. Sie können die Verschiebung erzwingen, indem Sie den Hinweis zunächst mit einem leeren Text ausblenden und dann den neuen Hinweis an der neuen Position anzeigen.
[static]
QString QToolTip::text()
Gibt den Tooltip-Text zurück, wenn ein Tooltip sichtbar ist, oder einen leeren String, wenn kein Tooltip sichtbar ist.
© 2025 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.