Страницы

Поиск по вопросам

понедельник, 30 марта 2020 г.

Принудительный вызов ToolTip

#cpp #qt


Есть QLineEdit с установленным tooltip, в которое записываются численные значения.
Хочется вызывать tooltip у этого поля при некорректном вводе. 

Как реализовать подобное, не через connect: смотреть корректность ввода —> вызывать
искусственно какой-нибудь метод с mouseEvent?

UPD:

    


Ответы

Ответ 1



Самое простое, это использование QToolTip::showText: QToolTip::showText(line_edit->mapToGlobal(QPoint()), line_edit->toolTip()); mapToGlobal(QPoint()) -- возвращает глобальные координаты виджета, от левого верхнего угла. Другой вариант -- послать событие QHelpEvent нужному виджету, используя QCoreApplication::postEvent QEvent* event = new QHelpEvent(QEvent::ToolTip, line_edit->pos(), line_edit->mapToGlobal(QPoint())); QCoreApplication::postEvent(line_edit, event);

Комментариев нет:

Отправить комментарий