Qt создатель: всплывающий виджет всплывает

Я новичок в Qt Creator и у меня есть несколько стековых виджетов в моем проекте, поэтому мой вопрос: могут ли всплывающие виджеты быть всплывающими? и как я могу это сделать? Также у меня есть Qt 5.5.1 с MinGW 32bit на ПК. Спасибо вам всем.

1 ответ

Да, вы можете обрабатывать события наведения мыши и делать там что угодно (показать свой всплывающий виджет). Переопределите QWidget::enterEvent(событие QEvent *), QWidget:: оставьте событие (событие QEvent *). Эти события вызываются, когда мышь входит или покидает виджет.

Что-то вроде того...

void YourParentWidget::enterEvent(QEvent * event)
{
    int x = 100;
    int y = 100;

    QPoint pos = mapToGlobal(QPoint(x, y));
    mYourPopUpWidget.move(pos);
    mYourPopUpWidget.show();
}

void YourParentWidget::leaveEvent(QEvent * event)
{
    mYourPopUpWidget.hide();
}

Другие вопросы по тегам