4#ifndef QABSTRACTSCROLLAREA_H
5#define QABSTRACTSCROLLAREA_H
7#include <QtWidgets/qtwidgetsglobal.h>
8#include <QtWidgets/qframe.h>
13#if QT_CONFIG(scrollarea)
17class QAbstractScrollAreaPrivate;
19class Q_WIDGETS_EXPORT QAbstractScrollArea :
public QFrame
24 WRITE setVerticalScrollBarPolicy)
26 WRITE setHorizontalScrollBarPolicy)
27 Q_PROPERTY(SizeAdjustPolicy sizeAdjustPolicy READ sizeAdjustPolicy WRITE setSizeAdjustPolicy)
30 explicit QAbstractScrollArea(
QWidget *parent =
nullptr);
31 ~QAbstractScrollArea();
33 enum SizeAdjustPolicy {
35 AdjustToContentsOnFirstShow,
43 void setVerticalScrollBar(
QScrollBar *scrollbar);
48 void setHorizontalScrollBar(
QScrollBar *scrollbar);
58 QSize maximumViewportSize()
const;
60 QSize minimumSizeHint()
const override;
62 QSize sizeHint()
const override;
66 SizeAdjustPolicy sizeAdjustPolicy()
const;
67 void setSizeAdjustPolicy(SizeAdjustPolicy
policy);
70 QAbstractScrollArea(QAbstractScrollAreaPrivate &dd,
QWidget *parent =
nullptr);
72 void setViewportMargins(
const QMargins &margins);
77 virtual bool viewportEvent(
QEvent *);
85#if QT_CONFIG(wheelevent)
86 void wheelEvent(QWheelEvent *)
override;
88#ifndef QT_NO_CONTEXTMENU
91#if QT_CONFIG(draganddrop)
92 void dragEnterEvent(QDragEnterEvent *)
override;
93 void dragMoveEvent(QDragMoveEvent *)
override;
94 void dragLeaveEvent(QDragLeaveEvent *)
override;
95 void dropEvent(QDropEvent *)
override;
100 virtual void scrollContentsBy(
int dx,
int dy);
102 virtual QSize viewportSizeHint()
const;
105 Q_DECLARE_PRIVATE(QAbstractScrollArea)
106 Q_DISABLE_COPY(QAbstractScrollArea)
The QFrame class is the base class of widgets that can have a frame.
The QKeyEvent class describes a key event.
The QPaintEvent class contains event parameters for paint events.
The QResizeEvent class contains event parameters for resize events.
Combined button and popup list for selecting options.
GLdouble GLdouble GLdouble GLdouble top
view viewport() -> scroll(dx, dy, deviceRect)