QT QTextBrowser实现下拉加载/刷新

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

#ifndef FORMTEST_H
#define FORMTEST_H

#include <QWidget>
#include<qtextbrowser.h>
#include <QScrollBar>


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<QDebug>

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文件均在代码中,槽函数是可以自行添加自己的需求。

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

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
QT实现下拉菜单,可以使用 QComboBox 控件。 QComboBox 是一个组合框控件,它允许用户在一个下拉列表框中选择一个选项。可以通过添加选项来创建下拉列表框。当用户选择一个选项时,QComboBox 发出 currentIndexChanged() 信号。 以下是一个简单的示例,演示如何使用 QComboBox 创建一个下拉菜单: ```python import sys from PyQt5.QtWidgets import QApplication, QComboBox, QWidget, QVBoxLayout class Example(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): # 创建一个 QComboBox 对象 combo = QComboBox(self) # 添加选项 combo.addItem('Python') combo.addItem('Java') combo.addItem('C++') combo.addItem('Ruby') # 选中默认选项 combo.setCurrentIndex(0) # 监听选项改变事件 combo.currentIndexChanged.connect(self.selectionChange) vbox = QVBoxLayout() vbox.addWidget(combo) self.setLayout(vbox) self.setGeometry(300, 300, 300, 150) self.setWindowTitle('QComboBox') self.show() def selectionChange(self, i): # 输出选项内容 print('选择了:', i) if __name__ == '__main__': app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) ``` 在上面的代码中,我们创建了一个 QComboBox 对象并添加了四个选项。然后我们将它添加到 QVBoxLayout 布局中,并设置为窗口的布局。最后我们监听 currentIndexChanged 信号,并在选择改变时输出选项内容。 运行上面的代码,我们可以看到一个简单的下拉菜单。当我们选择一个选项时,控制台会输出选项内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值