Класс QToolTip
Класс QToolTip предоставляет подсказки (балонную справку) для любого виджета. Подробнее...
| Заголовок: | #include <QToolTip> |
| CMake: | find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
Статические публичные члены
| 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() |
Подробное описание
Подсказка — это короткий фрагмент текста, напоминающий пользователю о функции виджета. Она отображается непосредственно под заданной позицией в отличительной комбинации черного на жёлтом цвете. Подсказка может быть любым форматированным текстом.
Отображаемый в подсказке форматированный текст неявно переносится на следующую строку, если не указано иное с помощью <p style='white-space:pre'>.
Самый простой и распространённый способ установить подсказку виджета — это вызвать его функцию QWidget::setToolTip().
Также можно отображать разные подсказки для разных областей виджета, используя QHelpEvent типа QEvent::ToolTip. Перехватывайте событие справки в функции event() своего виджета и вызывайте QToolTip::showText() с текстом, который хотите отобразить. Пример Tooltips иллюстрирует эту технику.
Если вы вызываете QToolTip::hideText() или QToolTip::showText() с пустой строкой в результате события ToolTip, вы также должны вызвать ignore() для события, чтобы указать, что вы не хотите начинать каких-либо режимов, специфичных для подсказок.
Обратите внимание, что если вы хотите отображать подсказки в представлении элементов, архитектура модели/представления предоставляет возможность установить подсказку элемента; например, функция QTableWidgetItem::setToolTip(). Однако, если вы хотите предоставить пользовательские подсказки в представлении элементов, вы должны перехватить событие справки в функции QAbstractItemView::viewportEvent() и обработать его самостоятельно.
Цвет и шрифт подсказки по умолчанию можно настроить с помощью setPalette() и setFont(). Когда подсказка отображается, isVisible() возвращает true , а text() — отображаемый в данный момент текст.
Примечание: Подсказки используют пассивную группу цветов QPalette, потому что подсказки не являются активными окнами.
См. также QWidget::toolTip, QAction::toolTip и Пример подсказок.
Документация по функциям-членам
[static] QFont QToolTip::font()
Возвращает шрифт, используемый для отображения подсказок.
См. также setFont().
[static] void QToolTip::hideText()
Скрывает подсказку. Это то же самое, что вызов showText() с пустой строкой.
См. также showText().
[static] bool QToolTip::isVisible()
Возвращает true, если подсказка в настоящее время отображается.
См. также showText().
[static] QPalette QToolTip::palette()
Возвращает палитру, используемую для отображения подсказок.
Примечание: Подсказки используют пассивную группу цветов QPalette, потому что подсказки не являются активными окнами.
См. также setPalette().
[static] void QToolTip::setFont(const QFont &font)
Устанавливает font, используемый для отображения подсказок.
См. также font().
[static] void QToolTip::setPalette(const QPalette &palette)
Устанавливает palette, используемую для отображения подсказок.
Примечание: Подсказки используют пассивную группу цветов QPalette, потому что подсказки не являются активными окнами.
См. также palette().
[static] void QToolTip::showText(const QPoint &pos, const QString &text, QWidget *w = nullptr, const QRect &rect = {}, int msecDisplayTime = -1)
Отображает text в виде подсказки с глобальной позицией pos как точкой интереса. Подсказка будет отображаться с платформенно-зависимым смещением от этой точки интереса.
Если вы укажете ненулевую область, подсказка будет скрыта, как только курсор выйдет за пределы этой области.
rect задаётся в координатах виджета, который вы указываете с помощью w. Если rect не пуста, вы должны указать виджет. В противном случае этот аргумент может быть nullptr, но используется для определения соответствующего экрана на системах с несколькими мониторами.
Параметр msecDisplayTime указывает, как долго будет отображаться подсказка в миллисекундах. При значении по умолчанию -1 время основывается на длине текста.
Если text пустая, подсказка скрывается. Если текст совпадает с текущей отображаемой подсказкой, подсказка не будет перемещена. Вы можете принудительно переместить подсказку, сначала скрыв её пустым текстом, а затем показав новую подсказку в новом положении.
[static] QString QToolTip::text()
Возвращает текст подсказки, если подсказка видна, или пустую строку, если подсказка не видна.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qtooltip.html