QListWidget不发出信号itemEntered(QListWidgetItem *)

时间:2017-05-11 05:39:08

标签: c++ qt qlistwidget qlistwidgetitem

在我的程序中,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(...)函数。 我想知道,什么条件会导致这种现象。

1 个答案:

答案 0 :(得分:0)

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

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

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