QT QTextBrowser实现下拉加载/刷新

最近做了一个QTextBrowser的下拉加载功能,具体需求是用户下拉QTextBrowser到底的时候QTextBrowser进行加载功能。实现原理很简单,自定义控件继承QTextBrowser,利用QScrollBar的valueChanged信号来进行。具体代码如下:

#ifndef FORMTEST_H
#define FORMTEST_H

#include 
#include
#include 


class FormTest : public QTextBrowser
{
    Q_OBJECT

public:
    explicit FormTest(QWidget *parent = 0);
    ~FormTest();

private slots:
    void onSliderChanged(int data);

private:
    Ui::FormTest *ui;
    QScrollBar *sb;
    int stop;
};

#endif // FORMTEST_H


#include "formtest.h"
#include "ui_formtest.h"
#include

FormTest::FormTest(QWidget *parent) :
    QTextBrowser(parent)
{
    stop=0;
    sb=verticalScrollBar();
    connect(sb,&QScrollBar::valueChanged,this,&FormTest::onSliderChanged);
}

void FormTest::onSliderChanged(int data)
{
    if(data-stop>=0)
    {
        qDebug()<<"change";
        stop=data;
    }

    if(data==sb->maximum())
    {
     qDebug()<<"MAX";
    }


}

FormTest::~FormTest()
{
    delete ui;
}

.h .cpp文件均在代码中,槽函数是可以自行添加自己的需求。

代码思路比较简单,如有错误希望指正,共同进步。

你可能感兴趣的:(QT)