添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

QT里的滚动条操作,
我理解的QScrollArea对象的使用为,把某个widget绑定到该QScrollArea对象,scrol->setWidget(widget);
绑定的widget对象的长宽超过边界时,会有滚动条的效果。

#include <QtGui/QApplication>
#include <QLabel>
#include <QImage>
#include <QScrollArea>
#include <QHBoxLayout>
void ScrollArea_test::Init()
	root_widget_ = new QWidget(this);
	setCentralWidget(root_widget_);
	QVBoxLayout* root_layout = new QVBoxLayout(root_widget_);
	setLayout(root_layout);
	QWidget* widget = new QWidget();
	QVBoxLayout* layout = new QVBoxLayout(widget);
	setLayout(layout);
	QPushButton* btn_1 = new QPushButton();
	btn_1->setText("zhangsan");
	btn_1->setFixedSize(600, 600);
	QPushButton* btn_2 = new QPushButton();
	btn_2->setText("zhangsan");
	btn_2->setFixedSize(600, 600);
	layout->addWidget(btn_1);
	layout->addWidget(btn_2);
	QScrollArea* scrol = new QScrollArea();
	scrol->setWidget(widget);
	scrol->setWidgetResizable(1);
	scrol->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
	scrol->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
	root_layout->addWidget(scrol);
	QPushButton* btn_3 = new QPushButton();
	btn_3->setText("lisi");
	btn_3->setFixedSize(100, 100);
	root_layout->addWidget(btn_3);

显示效果为:
在这里插入图片描述

QT里的滚动条操作,代码参考自:https://blog.51cto.com/9291927/1867974#include &lt;QtGui/QApplication&gt;#include &lt;QLabel&gt;#include &lt;QImage&gt;#include &lt;QScrollArea&gt;#include &lt;QHBoxLayout&gt;in...
QScrollArea 最主要的方法在于, 简单来说就是设置画布的意思,通常我们在使用的时候需要先把需要的控件放到一个画布里。而QScrollArea 就类似于我们拿着一个放大镜去观察这个画布。所以想要出现滚动条,画布的大小一定要比QScrollArea 大! 以下代码示例: 最后,我们还可以对滚动条禁用。例如禁用横向滚动条: 效果图待添加:
有些时候,我们界面能展示的区域被限定的很小,但是需要展现的控件、内容却很多,在限定大小的区域无法全部显示。这个时候就需要滚动条了。在Qt有一个很好的类 QScrollArea。 有两种方式可是实现滚动区域: 第一种直接用 Qt Designer 去设计ui文件: 拖入QScrollArea然后进行布局即可。 第二种是代码实现: QLabel *imageLabel = new Q...
继承于QWidget创建的项目,要想在QWidget添加很多子控件,考虑到若是子控件的数目不确定,太多的时候就需要添加滚动条来实现滚动查看,于是可以自定义一个类,在该类实现滚动区域和滚动窗口的创建,然后将该自定义的类提升为QWidget。 下面是自定义的滚动区域类 scrolldisplaywidget.h #ifndef SCROLLDISPLAYWIDGET_H #define SCROLLDISPLAYWIDGET_H #include <QFrame> #include
Qt,可以使用QScrollArea类来创建一个带有滚动条的窗口部件。要设置滚动条,可以使用setVerticalScrollBarPolicy()和setHorizontalScrollBarPolicy()方法来设置垂直和水平滚动条的显示策略。例如,以下代码将创建一个QScrollArea对象,并设置垂直滚动条始终可见,水平滚动条从不可见: QScrollArea *scrollArea = new QScrollArea; scrollArea->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn); scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); 除了设置滚动条的显示策略外,还可以使用QScrollBar类的方法来设置滚动条的其他属性,例如范围、步长、当前值等。可以使用setWidget()方法将要滚动的窗口部件设置为QScrollArea的子部件。例如,以下代码将创建一个QLabel对象,并将其设置为QScrollArea的子部件: QLabel *label = new QLabel("This is a long text that needs to be scrolled."); scrollArea->setWidget(label);