Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
qgridlayout.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QGRIDLAYOUT_H
5#define QGRIDLAYOUT_H
6
7#include <QtWidgets/qtwidgetsglobal.h>
8#include <QtWidgets/qlayout.h>
9#ifdef QT_INCLUDE_COMPAT
10#include <QtWidgets/qwidget.h>
11#endif
12
13#include <limits.h>
14
16
17
19
20class Q_WIDGETS_EXPORT QGridLayout : public QLayout
21{
23 Q_DECLARE_PRIVATE(QGridLayout)
24 QDOC_PROPERTY(int horizontalSpacing READ horizontalSpacing WRITE setHorizontalSpacing)
25 QDOC_PROPERTY(int verticalSpacing READ verticalSpacing WRITE setVerticalSpacing)
26
27public:
28 explicit QGridLayout(QWidget *parent = nullptr);
30
31 QSize sizeHint() const override;
32 QSize minimumSize() const override;
33 QSize maximumSize() const override;
34
35 void setHorizontalSpacing(int spacing);
36 int horizontalSpacing() const;
37 void setVerticalSpacing(int spacing);
38 int verticalSpacing() const;
39 void setSpacing(int spacing) override;
40 int spacing() const override;
41
42 void setRowStretch(int row, int stretch);
43 void setColumnStretch(int column, int stretch);
44 int rowStretch(int row) const;
45 int columnStretch(int column) const;
46
47 void setRowMinimumHeight(int row, int minSize);
48 void setColumnMinimumWidth(int column, int minSize);
49 int rowMinimumHeight(int row) const;
50 int columnMinimumWidth(int column) const;
51
52 int columnCount() const;
53 int rowCount() const;
54
55 QRect cellRect(int row, int column) const;
56
57 bool hasHeightForWidth() const override;
58 int heightForWidth(int) const override;
59 int minimumHeightForWidth(int) const override;
60
61 Qt::Orientations expandingDirections() const override;
62 void invalidate() override;
63
65 void addWidget(QWidget *, int row, int column, Qt::Alignment = Qt::Alignment());
66 void addWidget(QWidget *, int row, int column, int rowSpan, int columnSpan, Qt::Alignment = Qt::Alignment());
67 void addLayout(QLayout *, int row, int column, Qt::Alignment = Qt::Alignment());
68 void addLayout(QLayout *, int row, int column, int rowSpan, int columnSpan, Qt::Alignment = Qt::Alignment());
69
70 void setOriginCorner(Qt::Corner);
71 Qt::Corner originCorner() const;
72
73 QLayoutItem *itemAt(int index) const override;
74 QLayoutItem *itemAtPosition(int row, int column) const;
75 QLayoutItem *takeAt(int index) override;
76 int count() const override;
77 void setGeometry(const QRect&) override;
78
79 void addItem(QLayoutItem *item, int row, int column, int rowSpan = 1, int columnSpan = 1, Qt::Alignment = Qt::Alignment());
80
81 void setDefaultPositioning(int n, Qt::Orientation orient);
82 void getItemPosition(int idx, int *row, int *column, int *rowSpan, int *columnSpan) const;
83
84protected:
85 void addItem(QLayoutItem *) override;
86
87private:
88 Q_DISABLE_COPY(QGridLayout)
89
90};
91
93
94#endif // QGRIDLAYOUT_H
The QGridLayout class lays out widgets in a grid.
Definition qgridlayout.h:21
void addWidget(QWidget *w)
This is an overloaded member function, provided for convenience. It differs from the above function o...
Definition qgridlayout.h:64
The QLayoutItem class provides an abstract item that a QLayout manipulates.
Definition qlayoutitem.h:25
virtual bool hasHeightForWidth() const
Returns true if this layout's preferred height depends on its width; otherwise returns false.
virtual int heightForWidth(int) const
Returns the preferred height for this layout item, given the width, which is not used in this default...
virtual int minimumHeightForWidth(int) const
Returns the minimum height this widget needs for the given width, w.
virtual QSize sizeHint() const =0
Implemented in subclasses to return the preferred size of this item.
The QLayout class is the base class of geometry managers.
Definition qlayout.h:26
void addWidget(QWidget *w)
Adds widget w to this layout in a manner specific to the layout.
Definition qlayout.cpp:186
int spacing
the spacing between widgets inside the layout
Definition qlayout.h:30
QSize maximumSize() const override
Returns the maximum size of this layout.
Definition qlayout.cpp:926
virtual void setSpacing(int)
Definition qlayout.cpp:266
virtual void addItem(QLayoutItem *)=0
Implemented in subclasses to add an item.
virtual QLayoutItem * itemAt(int index) const =0
Must be implemented in subclasses to return the layout item at index.
virtual QLayoutItem * takeAt(int index)=0
Must be implemented in subclasses to remove the layout item at index from the layout,...
Qt::Orientations expandingDirections() const override
Returns whether this layout can make use of more space than sizeHint().
Definition qlayout.cpp:943
QSize minimumSize() const override
Returns the minimum size of this layout.
Definition qlayout.cpp:911
void invalidate() override
\reimp
Definition qlayout.cpp:469
virtual int count() const =0
Must be implemented in subclasses to return the number of items in the layout.
virtual void setGeometry(const QRect &) override
\reimp
Definition qlayout.cpp:451
\inmodule QtCore\reentrant
Definition qrect.h:30
\inmodule QtCore
Definition qsize.h:25
The QWidget class is the base class of all user interface objects.
Definition qwidget.h:99
qreal spacing
Combined button and popup list for selecting options.
Orientation
Definition qnamespace.h:97
GLfloat GLfloat GLfloat w
[0]
GLuint index
[2]
GLfloat n
GLenum GLenum GLsizei void GLsizei void * column
GLenum GLenum GLsizei void * row
#define Q_OBJECT
#define QDOC_PROPERTY(text)
QGraphicsItem * item
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent