QLabel“悬停”区域太小

时间:2014-03-06 18:31:44

标签: qt hover label

我在QLabel上遇到悬停功能问题。 我已将其实现为事件过滤器:

HoverLabel::HoverLabel(QWidget *parent) : QWidget(parent)
{
    installEventFilter(this);

    label = (QLabel *)parent;

    show();
}

bool HoverLabel::eventFilter(QObject *object, QEvent *event)
{
    if (object == this)
    {
        if (event->type() == QEvent::Enter)
        {
            label->setText("Howering");
            return true;
        }
        else if (event->type() == QEvent::Leave)
        {
            label->setText("Not howering");
            return true;
        }
    }
    return false;
}

主构造函数运行时调用:

hoverLabels[0] = new HoverLabel(ui->hoverLabel_1);

现在一切正常,除了我的ger QEvent :: Enter的区域太小而且更多,常量 - 你可以将标签的大小加倍,生成事件的区域保持不变。

我用蓝色矩形标记了图片上的悬停区域,因为鼠标由于某种原因未被捕获。除此之外,它还说“不畏惧”。我尝试了各种文本内容,各种文字大小,检查所有方框,设置不同大小的政策,但区域仍然相同。

enter image description here

1 个答案:

答案 0 :(得分:0)