Как убрать задержку появления tooltip?

Рейтинг: 0Ответов: 1Опубликовано: 01.04.2023

Есть у меня один QComboBox, на котором висит tooltip. Как можно ускорить появления этой подсказки? Qt 5.6

Ответы

▲ 1Принят

Можно попробовать наследоваться от QComboBox и перегрузить метод mouseMoveEvent в котором вызвать статический метод QToolTip::showText:

#include <QToolTip>
#include <QMouseEvent>

MyCombo::MyCombo(QWidget *parent):
    QComboBox(parent)
{
    // Надо установить в true, чтобы вызывался метод mouseMoveEvent
    setMouseTracking(true);
}

void MyCombo::mouseMoveEvent(QMouseEvent *evt)
{
    QComboBox::mouseMoveEvent(evt);
    // Qt 6.0+
    QToolTip::showText(evt->globalPosition().toPoint(), "Tool Tip");
    // Qt 6.0-
    QToolTip::showText(evt->globalPos(), "Tool Tip");
}