2013-07-19 51 views

回答

1

动态加载内容并不意味着它是无限的。为此,只需实现模型的fetchMore()和canFetchMore()方法。

+0

嗨peppe。感谢您的回答,我将在下周进行测试,我会再次给您发短信。有一个愉快的周末, –

+1

它只适用于列表的结束而不是列表的开始(只需向下滚动不向上滚动)。你有什么想法向上滚动? –

0

fetchMore和canFetchMore确实很光滑,但它有点模糊了事情的工作原理。

更直接的方法,你可以在你的子分类QListWidget中使用这个函数。

void MyQListWidgetClass::scrollContentsBy(int dx, int dy) 
{ 
    QListWidget::scrollContentsBy(dx, dy); 

    bool scrolled_top = false; 
    if(this->verticalScrollBar()->value() == this->verticalScrollBar()->minimum()) 
     scrolled_top = true; 

    bool scrolled_bottom = false; 
    if(this->verticalScrollBar()->value() == this->verticalScrollBar()->maximum()) 
     scrolled_bottom = true; 


    if(scrolled_top) 
     qDebug() << "FIRE FIRE FIRE FIRE!!!"; 

    if(scrolled_bottom) 
     qDebug() << "WATER WATER WATER WATER!!!"; 
} 

当然,如果你想添加更多的填充,你可以从最小值/最大值中减去一些值。