Qt 使用 QScrollArea 滚动绘制区域

Qt 使用 QScrollArea 滚动绘制区域,第1张

Qt 使用 QScrollArea 滚动绘制区域 一、概述

由于在 paintEvent 函数中绘制图形时发现界面区域不够了,因此要使用 QScrollArea 来滚动,这样才可以显示全部的图形。

网上很多教程是对一张图片的实例,而我的图形是多个图片图形组成的,因此需要一个 QWidget 来装填绘制的图片图形。

二、步骤 2.1 新建一个 c++ 类

这个类继承 QWidget,然后重写 paintEvent 函数,绘制我们自己想要的图形。

2.2 设置最小显示尺寸

在这个类的构造函数中设置,非常重要,关系到滑动条的出现。

this->setMinimumSize(QSize(1000, 1000)); 
2.3 新建 QScrollArea,然后与刚才的类绑定一起
m_scrollArea = new QScrollArea(this);
m_scrollArea->setBackgroundRole(QPalette::Dark);  // 背景色
m_scrollArea->setGeometry(150,300,800,400); // 设置滚动区域的位置
m_scrollArea->setWidget(widget); // 绑定
m_scrollArea->setAlignment(Qt::AlignCenter);  // 居中对齐
三、效果


四、参考资料
  • CSDN-QScrollArea的简单使用

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5115946.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存