【问题标题】:Using setWhatIsThis in Qt with QPushButton在 Qt 中使用 setWhatIsThis 和 QPushButton
【发布时间】:2013-05-07 08:06:30
【问题描述】:

当鼠标悬停在按钮上时,我需要显示“帮助文本”,我用谷歌搜索并尝试了一些代码,但没有成功。

谁能纠正我?

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."));
    }
}

【问题讨论】:

  • tooltip 怎么样?
  • 工具没有给我智能文本,但它可能是解决方案
  • “智能文本”是什么意思?

标签: c++ qt qpushbutton


【解决方案1】:

不要通过 QAction,只需使用您的 QPushButton(确实是 QWidget)setToolTip(const QString &)

这将为您的按钮/小部件设置一个工具提示,当您的鼠标悬停在它上面时会出现该工具提示。看起来这就是您想要的,而不是您现在尝试使用的“这是什么”消息。

【讨论】:

    【解决方案2】:

    您可以使用 QpushButton 的属性 setToolTip ( const QString & ) 来做同样的事情。 这将在鼠标悬停在 Qpushbutton 上时显示帮助文本。

    对于智能文本,您可以根据您的要求为 Tooltip 设置样式表:-

    QToolTip { 颜色:#fff;背景颜色:#000;边框:无; }

    【讨论】:

      猜你喜欢
      • 2023-04-07
      • 2022-01-11
      • 1970-01-01
      • 2012-01-24
      • 1970-01-01
      • 1970-01-01
      • 2021-01-20
      • 2018-07-05
      • 1970-01-01
      相关资源
      最近更新 更多