如何覆盖所有widgit工具提示以使它们显示在单个qtextbrowser小部件中



我是QT的新手,因此不知道所有IN和OUT,因此想知道如何将鼠标悬停在复选框或包含工具提示的其他字段时,要获取该工具提示文本并将其应用/显示在qtextbrowser窗口小部件上??

感谢您在此问题上的任何帮助。

每个Qwidget都有一个"工具提示"属性。为了获得它,您可以简单地致电:

QString toolTip = desiredWidget->toolTip();

您也看到,要将工具提示作为字符串,您不必等到您的鼠标会徘徊在所需的小部件上。之后,您可以根据需要使用此工具提示(例如,如您在问题中所写的那样,将其显示在qtextbrowser中)。

如果您尝试在光标下动态显示小部件的工具提示,请尝试跟踪鼠标运动。

class MyWidget: public  SuperclassWidget
{...};
void MyWidget::mouseMoveEvent(QMouseEvent *event)
{
    const QWidget *widget = childAt(event->pos());
    if (widget != NULL)
        _textBrowser->setHtml(widget->toolTip());
    SuperclassWidget::mouseMoveEvent(event);
}

可能有更多聪明的事情可以防止过于频繁地设置同一工具提示,例如记住最后一个小部件。

最新更新