Мне нужно показать «текст справки», когда мышь находится над кнопкой, я погуглил и попробовал какой-то код, но тщетно.
Кто-нибудь может исправить это для меня?
if (event->type() == QEvent::Enter)
{
if (obj == q1)
{
iarm->printStatus("hi"); // For debugging
QAction *newAct = new QAction(tr("&New"), this);
newAct->setShortcut(tr("Ctrl+N"));
newAct->setStatusTip(tr("Create a new file"));
newAct->setWhatsThis(tr("Click this option to create a new file."));
}
}
Вместо того, чтобы идти через QAction, просто используйте свой QPushButton (ну, на самом деле, QWidget) setToolTip(const QString &)
.
Это установит всплывающую подсказку для вашей кнопки / виджета, которая появляется, когда ваша мышь наводит курсор на нее. Похоже, это то, что вы собираетесь, а не сообщение «Что это», которое вы пытаетесь использовать сейчас.
Вы можете использовать свойство QpushButton setToolTip (const QString & ) для того же.
Это отобразит текст вашей справки при наведении курсора мыши на кнопку Qpush.
Для смарт-текста согласно вашему требованию вы можете установить таблицу стилей для всплывающей подсказки: —
QToolTip {color: #fff; цвет фона: # 000; граница: нет; }