• QT QScrollArea控件 使用详解


            本文详细的介绍了QScrollArea控件的各种操作,例如:新建界面源文件布局进度条宽进度条高水平滚动条值垂直滚动条值移入事件移出事件、效果图、其它文章等等操作。

            实际开发中,一个界面上可能包含十几个控件,手动调整它们的位置既费时又费力。QScrollArea是 Qt 框架中的一个小部件,用于滚动区域用于显示框架内子小部件的内容。如果小部件超出了框架的大小,视图可以提供滚动条,以便查看子小部件的整个区域。子小部件必须用setWidget()指定。

            本系列QT全面详解文章目前共有三十二篇,本系列文章较为详细的讲述了QT控件的基础操作和使用,也谢谢大家的关注、点赞、收藏。

     本文作者原创,转载请附上文章出处与本文链接。

    QT QScrollArea控件 使用详解目录

    1 新建界面

    2 源文件

    3 布局

    4 进度条宽

    5 进度条高

    6 水平滚动条值

    7 垂直滚动条值

    8 移入事件

    9 移出事件

    10 效果图

    11 其它文章


    1 新建界面


    2 源文件

    1. #ifndef MAINWINDOW_H
    2. #define MAINWINDOW_H
    3. #include
    4. #include
    5. #include
    6. #include
    7. #include "MouseEnterEventFilter.h"
    8. //加入UTF-8申明,否则中文乱码 全局使用GBK文件操作因为有中文所以使用
    9. #pragma execution_character_set("utf-8")
    10. QT_BEGIN_NAMESPACE
    11. namespace Ui { class MainWindow; }
    12. QT_END_NAMESPACE
    13. class MainWindow : public QMainWindow
    14. {
    15. Q_OBJECT
    16. public:
    17. MainWindow(QWidget *parent = nullptr);
    18. ~MainWindow();
    19. private slots:
    20. void on_scrollArea_customContextMenuRequested(const QPoint &pos);
    21. void on_scrollArea_MouseEntered();
    22. void on_scrollArea_SlotMouseLeft();
    23. void on_scrollArea_horizontalValueChanged(int value);
    24. void on_scrollArea_verticalValueChanged(int value);
    25. private:
    26. Ui::MainWindow *ui;
    27. QString Title;
    28. QString Version;
    29. QString BlogText;
    30. MouseEnterEventFilter *filter;
    31. int horizontalScrollBarWidth;
    32. int verticalScrollBarHeight;
    33. };
    34. #endif // MAINWINDOW_H

    3 布局

            加载一张图像,scrollAreaWidgetContents 选择栅格布局

    1. ui->label->setMinimumWidth(2560);
    2. ui->label->setMinimumHeight(1600);
    3. ui->label->setPixmap(QPixmap("D:/zero.jpg"));

    4 进度条

    1. horizontalScrollBarWidth = ui->scrollArea->horizontalScrollBar()->width();
    2. qDebug() << "Horizontal scroll bar width: " << horizontalScrollBarWidth;

    5 进度条高

    1. verticalScrollBarHeight = ui->scrollArea->verticalScrollBar()->height();
    2. qDebug() << "Vertical scroll bar height: " << verticalScrollBarHeight;

    6 水平滚动条

    1. connect(ui->scrollArea->horizontalScrollBar(), &QScrollBar::valueChanged, this, &MainWindow::on_scrollArea_horizontalValueChanged);
    2. void MainWindow::on_scrollArea_horizontalValueChanged(int value)
    3. {
    4. qDebug() << "水平滚动条的值: " << value;
    5. }

    7 垂直滚动条值

    1. connect(ui->scrollArea->verticalScrollBar(), &QScrollBar::valueChanged, this, &MainWindow::on_scrollArea_verticalValueChanged);
    2. void MainWindow::on_scrollArea_verticalValueChanged(int value)
    3. {
    4. qDebug() << "垂直滚动条的值: " << value;
    5. }

    8 移入事件

    1. connect(filter, &MouseEnterEventFilter::mouseEntered, this, &MainWindow::on_scrollArea_MouseEntered);
    2. void MainWindow::on_scrollArea_MouseEntered()
    3. {
    4. qDebug() << "鼠标移入";
    5. }

    9 移出事件

    1. connect(filter, &MouseEnterEventFilter::mouseLeft, this, &MainWindow::on_scrollArea_SlotMouseLeft);
    2. void MainWindow::on_scrollArea_SlotMouseLeft()
    3. {
    4. qDebug() << "鼠标移出";
    5. }

    10 效果图

    11 其它文章

    QT TextEdit控件_双子座断点的博客-CSDN博客_qt textedit

    QT QComboBox使用详解_双子座断点的博客-CSDN博客

    QT QtableView操作详解_双子座断点的博客-CSDN博客_qtableview增删改查

    Qt QStandardItemModel(1.超级详细用法)_双子座断点的博客-CSDN博客_qstandardmodel

    Qt QStandardItemModel(2.超级详细函数)_双子座断点的博客-CSDN博客_qstandarditemmodel点击事件

    QT QRadioButton使用详解_双子座断点的博客-CSDN博客_qt radiobutton

    QT QLineEdit使用详解_双子座断点的博客-CSDN博客_qt qlineedit

    Qt QMessageBox使用详解_双子座断点的博客-CSDN博客_qt message

    QChart折线图、饼状图、条形图、曲线图_双子座断点的博客-CSDN博客_qchart样式

    QChart属性详解_双子座断点的博客-CSDN博客_setanimationoptions

    QCharts QValueAxis使用_双子座断点的博客-CSDN博客_qvalueaxis

    Qt 5 等待提示框(开源 动态图)_双子座断点的博客-CSDN博客_qt 等待对话框

    QtDataVisualization 数据3D可视化_双子座断点的博客-CSDN博客_qtdatavisualizatio

    QT QSpinBox 整数计数器控件 使用详解_双子座断点的博客-CSDN博客
    QT QDoubleSpinBox 浮点计数器控件(使用详解)_双子座断点的博客-CSDN博客_qdoublespinbox信号槽
    QT QSlider、QHorizontalSlider、QVerticalSlider 控件 使用详解_双子座断点的博客-CSDN博客_qslider设置步长

    QT QTabWidget 控件 使用详解_双子座断点的博客-CSDN博客

    QT QCalendarWidget控件 使用详解_双子座断点的博客-CSDN博客

    QT QStackedWidget 控件 使用详解_双子座断点的博客-CSDN博客

    QT QVBoxLayout 垂直布局控件_双子座断点的博客-CSDN博客

    QT QHBoxLayout 水平布局控件_双子座断点的博客-CSDN博客
    QT QGridLayout网格布局控件_双子座断点的博客-CSDN博客

    QT QVerticalSpacer 弹簧控件_双子座断点的博客-CSDN博客
    QT QHorizontalSpacer弹簧控件_双子座断点的博客-CSDN博客
    QT QLine 使用详解_双子座断点的博客-CSDN博客
    QT QFontComboBox 使用详解_双子座断点的博客-CSDN博客

  • 相关阅读:
    安卓常见设计模式7------适配器模式(Kotlin版)(RecycleView adapter 模板代码)
    【数据处理】Python:实现求条件分布函数 | 求平均值方差和协方差 | 求函数函数期望值的函数 | 概率论
    YOLOv5全新Neck改进:BiSPAN 结构独一无二,为目标检测打造全新融合网络,增强定位信号,对于小目标检测的定位具有重要意义
    Ajax学习:Ajax请求基本操作
    Spring简介、IOC容器
    C++实现轻量级RPC分布式网络通信框架
    【微信小程序开发】宠物预约医疗项目实战-注册实现
    Python 编程基础 | 第二章-基础语法 | 2.1、缩进规则
    业务架构·应用架构·数据架构实战~架构实践全景图
    硕鼠——视频下载利器
  • 原文地址:https://blog.csdn.net/qq_37529913/article/details/132680528