0

在我的程序中,QListWidget 用在三个以上的地方。只有一处,QListWidget 没有发出信号 itemEntered(QListWidgetItem*)。

我的代码:

MyListWidget::MyListWidget(QWidget* parent):QListWidget(parent)
{
    this->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
    this->setMouseTracking(true); 
    connect(this, SIGNAL(itemEntered(QListWidgetItem*)),        
            this, SLOT(slotOnItemEntered(QListWidgetItem*)));
}
MyListWidget::slotOnItemEntered(QListWidgetItem* item)
{
    // do something
}

当我调试并移动鼠标滑动项目时,程序无法进入 slotOnItemEntered(...) 函数。我想知道,什么情况会导致这种现象。

4

1 回答 1

0

这个问题甚至不知道原因。我使用答案的方式来解决问题。

QWidget 有信号: enterEvent(...); // 当鼠标在 leaveEvent(...); 中移动时 // 当鼠标移出时

我覆盖了这两个函数,解决了这个问题。

于 2017-05-11T07:39:45.990 回答