QSize Class
Die Klasse „QSize“ definiert die Größe eines zweidimensionalen Objekts mit ganzzahliger Punktgenauigkeit. Mehr...
| Header: | #include <QSize> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
Öffentliche Funktionen
| QSize() | |
| QSize(int width, int height) | |
| QSize | boundedTo(const QSize &otherSize) const |
| QSize | expandedTo(const QSize &otherSize) const |
| QSize | grownBy(QMargins margins) const |
| int | height() const |
| bool | isEmpty() const |
| bool | isNull() const |
| bool | isValid() const |
| int & | rheight() |
| int & | rwidth() |
| void | scale(int width, int height, Qt::AspectRatioMode mode) |
| void | scale(const QSize &size, Qt::AspectRatioMode mode) |
| QSize | scaled(int width, int height, Qt::AspectRatioMode mode) const |
| QSize | scaled(const QSize &s, Qt::AspectRatioMode mode) const |
| void | setHeight(int height) |
| void | setWidth(int width) |
| QSize | shrunkBy(QMargins margins) const |
| CGSize | toCGSize() const |
(since 6.4) QSizeF | toSizeF() const |
| void | transpose() |
| QSize | transposed() const |
| int | width() const |
| QSize & | operator*=(qreal factor) |
| QSize & | operator+=(const QSize &size) |
| QSize & | operator-=(const QSize &size) |
| QSize & | operator/=(qreal divisor) |
Verwandte Nicht-Mitglieder
| bool | operator!=(const QSize &lhs, const QSize &rhs) |
| QSize | operator*(const QSize &size, qreal factor) |
| QSize | operator*(qreal factor, const QSize &size) |
| QSize | operator+(const QSize &s1, const QSize &s2) |
| QSize | operator-(const QSize &s1, const QSize &s2) |
| QSize | operator/(const QSize &size, qreal divisor) |
| QDataStream & | operator<<(QDataStream &stream, const QSize &size) |
| bool | operator==(const QSize &lhs, const QSize &rhs) |
| QDataStream & | operator>>(QDataStream &stream, QSize &size) |
Ausführliche Beschreibung
Eine Größe wird durch „ width()“ und „ height()“ festgelegt. Sie kann im Konstruktor festgelegt und mithilfe der Funktionen „ setWidth()“, „ setHeight()“ oder „ scale()“ sowie mithilfe arithmetischer Operatoren geändert werden. Eine Größe kann auch direkt bearbeitet werden, indem Referenzen auf die Breite und Höhe mithilfe der Funktionen „ rwidth()“ und „ rheight()“ abgerufen werden. Schließlich können Breite und Höhe mithilfe der Funktion „ transpose()“ vertauscht werden.
Die Funktion „ isValid()“ prüft, ob eine Größe gültig ist (eine gültige Größe hat sowohl eine Breite als auch eine Höhe größer oder gleich Null). Die Funktion „ isEmpty()“ gibt „ true “ zurück, wenn entweder die Breite oder die Höhe kleiner oder gleich Null ist, während die Funktion „ isNull()“ nur dann „ true “ zurückgibt, wenn sowohl die Breite als auch die Höhe Null sind.
Verwenden Sie die Funktion ` expandedTo()` (Größe), um eine Größe abzurufen, die die maximale Höhe und Breite dieser Größe und einer angegebenen Größe enthält. Analog dazu gibt die Funktion ` boundedTo()` (Größe) eine Größe zurück, die die minimale Höhe und Breite dieser Größe und einer angegebenen Größe enthält.
QSize-Objekte können sowohl gestreamt als auch verglichen werden.
Siehe auch „ QSizeF “, „ QPoint “ und „ QRect “.
Dokumentation zu den Mitgliedsfunktionen
[constexpr noexcept] QSize::QSize()
Erstellt ein „size“-Objekt mit ungültiger Breite und Höhe (d. h., „ isValid()“ gibt „ false “ zurück).
Siehe auch ` isValid()`.
[constexpr noexcept] QSize::QSize(int width, int height)
Erzeugt eine Größe mit den angegebenen Werten „ width “ und „ height “.
Siehe auch setWidth() und setHeight().
[constexpr noexcept] QSize QSize::boundedTo(const QSize &otherSize) const
Gibt eine Größe zurück, die die minimale Breite und Höhe dieser Größe sowie die angegebene „ otherSize “ enthält.
Siehe auch ` expandedTo()` und ` scale()`.
[constexpr noexcept] QSize QSize::expandedTo(const QSize &otherSize) const
Gibt ein „size“-Objekt zurück, das die maximale Breite und Höhe dieses „size“-Objekts sowie den angegebenen „ otherSize “ enthält.
Siehe auch ` boundedTo()` und ` scale()`.
[constexpr noexcept] QSize QSize::grownBy(QMargins margins) const
Gibt die Größe zurück, die sich ergibt, wenn diese Größe um ` margins` vergrößert wird.
Siehe auch ` shrunkBy()`.
[constexpr noexcept] int QSize::height() const
Gibt die Höhe zurück.
Siehe auch width() und setHeight().
[constexpr noexcept] bool QSize::isEmpty() const
Gibt „ true “ zurück, wenn entweder die Breite oder die Höhe kleiner oder gleich 0 ist; andernfalls wird „ false “ zurückgegeben.
Siehe auch isNull() und isValid().
[constexpr noexcept] bool QSize::isNull() const
Gibt „ true “ zurück, wenn sowohl die Breite als auch die Höhe 0 sind; andernfalls wird „false“ zurückgegeben.
Siehe auch „ isValid()“ und „ isEmpty()“.
[constexpr noexcept] bool QSize::isValid() const
Gibt „ true “ zurück, wenn sowohl die Breite als auch die Höhe größer oder gleich 0 sind; andernfalls wird „ false “ zurückgegeben.
Siehe auch isNull() und isEmpty().
[constexpr noexcept] int &QSize::rheight()
Gibt eine Referenz auf die Höhe zurück.
Durch die Verwendung einer Referenz ist es möglich, die Höhe direkt zu bearbeiten. Beispiel:
QSize size(100, 10);
size.rheight() += 5;
// size becomes (100,15)Siehe auch ` rwidth()` und ` setHeight()`.
[constexpr noexcept] int &QSize::rwidth()
Gibt eine Referenz auf die Breite zurück.
Durch die Verwendung einer Referenz ist es möglich, die Breite direkt zu bearbeiten. Beispiel:
QSize size(100, 10);
size.rwidth() += 20;
// size becomes (120,10)Siehe auch rheight() und setWidth().
[noexcept] void QSize::scale(int width, int height, Qt::AspectRatioMode mode)
Skaliert die Größe auf ein Rechteck mit den angegebenen Werten „ width “ und „ height “ gemäß der angegebenen „ mode “:
- Ist mode gleich Qt::IgnoreAspectRatio, wird die Größe auf (width, height) gesetzt.
- Ist „ mode “ auf „ Qt::KeepAspectRatio “ gesetzt, wird die aktuelle Größe unter Beibehaltung des Seitenverhältnisses auf ein möglichst großes Rechteck innerhalb von (width, height) skaliert.
- Wenn „ mode “ auf „ Qt::KeepAspectRatioByExpanding “ gesetzt ist, wird die aktuelle Größe auf ein möglichst kleines Rechteck außerhalb von (width, height) skaliert, wobei das Seitenverhältnis beibehalten wird.
Beispiel:
QSize t1(10, 12);
t1.scale(60, 60, Qt::IgnoreAspectRatio);
// t1 is (60, 60)
QSize t2(10, 12);
t2.scale(60, 60, Qt::KeepAspectRatio);
// t2 is (50, 60)
QSize t3(10, 12);
t3.scale(60, 60, Qt::KeepAspectRatioByExpanding);
// t3 is (60, 72)Siehe auch ` setWidth()`, ` setHeight()` und ` scaled()`.
[noexcept] void QSize::scale(const QSize &size, Qt::AspectRatioMode mode)
Skaliert die Größe auf ein Rechteck mit den angegebenen Maßen „ size “ gemäß der festgelegten Skalierung „ mode “.
Dies ist eine überladene Funktion.
[noexcept] QSize QSize::scaled(int width, int height, Qt::AspectRatioMode mode) const
Gibt eine Größe zurück, die entsprechend den angegebenen Werten „ width “ und „ height “ sowie der angegebenen „ mode “ auf ein Rechteck skaliert ist.
Siehe auch scale().
[noexcept] QSize QSize::scaled(const QSize &s, Qt::AspectRatioMode mode) const
Gibt eine Größe zurück, die entsprechend der angegebenen Größe s auf ein Rechteck skaliert ist, gemäß der angegebenen mode.
Dies ist eine überladene Funktion.
[constexpr noexcept] void QSize::setHeight(int height)
Stellt die Höhe auf den angegebenen Wert „ height “ ein.
Siehe auch rheight(), height() und setWidth().
[constexpr noexcept] void QSize::setWidth(int width)
Stellt die Breite auf den angegebenen Wert „ width “ ein.
Siehe auch rwidth(), width() und setHeight().
[constexpr noexcept] QSize QSize::shrunkBy(QMargins margins) const
Gibt die Größe zurück, die sich ergibt, wenn diese Größe um margins verkleinert wird.
Siehe auch ` grownBy()`.
[noexcept] CGSize QSize::toCGSize() const
Erstellt ein `CGSize` aus einem ` QSize`.
Siehe auch ` QSizeF::fromCGSize()`.
[constexpr noexcept, since 6.4] QSizeF QSize::toSizeF() const
Gibt diese Größe als Wert mit Gleitkommagenauigkeit zurück.
Diese Funktion wurde in Qt 6.4 eingeführt.
Siehe auch ` QSizeF::toSize()`.
[noexcept] void QSize::transpose()
Tauscht die Werte für Breite und Höhe aus.
Siehe auch setWidth(), setHeight() und transposed().
[constexpr noexcept] QSize QSize::transposed() const
Gibt ein „ QSize “-Objekt zurück, bei dem Breite und Höhe vertauscht sind.
Siehe auch ` transpose()`.
[constexpr noexcept] int QSize::width() const
Gibt die Breite zurück.
Siehe auch height() und setWidth().
[constexpr noexcept] QSize &QSize::operator*=(qreal factor)
Multipliziert sowohl die Breite als auch die Höhe mit dem angegebenen Wert „ factor “ und gibt eine Referenz auf die Größe zurück.
Beachten Sie, dass das Ergebnis auf die nächste ganze Zahl gerundet wird.
Siehe auch ` scale()`.
[constexpr noexcept] QSize &QSize::operator+=(const QSize &size)
Fügt die angegebene Größe „ size “ zu dieser Größe hinzu und gibt eine Referenz auf diese Größe zurück. Beispiel:
[constexpr noexcept] QSize &QSize::operator-=(const QSize &size)
Zieht den angegebenen „ size “ von dieser Größe ab und gibt eine Referenz auf diese Größe zurück. Zum Beispiel:
QSize &QSize::operator/=(qreal divisor)
Teilt sowohl die Breite als auch die Höhe durch den angegebenen Wert „ divisor “ und gibt eine Referenz auf die Größe zurück.
Beachten Sie, dass das Ergebnis auf die nächste ganze Zahl gerundet wird.
Siehe auch ` QSize::scale()`.
Verwandte Nicht-Mitglieder
[constexpr noexcept] bool operator!=(const QSize &lhs, const QSize &rhs)
Gibt „ true “ zurück, wenn „ lhs “ und „ rhs “ unterschiedlich sind; andernfalls wird „ false “ zurückgegeben.
[constexpr noexcept] QSize operator*(const QSize &size, qreal factor)
Multipliziert den angegebenen Wert ` size ` mit dem angegebenen Wert ` factor` und gibt das auf die nächste ganze Zahl gerundete Ergebnis zurück.
Siehe auch QSize::scale().
[constexpr noexcept] QSize operator*(qreal factor, const QSize &size)
Multipliziert den angegebenen Wert ` size ` mit dem angegebenen Wert ` factor` und gibt das auf die nächste ganze Zahl gerundete Ergebnis zurück.
Dies ist eine überladene Funktion.
[constexpr noexcept] QSize operator+(const QSize &s1, const QSize &s2)
Gibt die Summe aus s1 und s2 zurück; jede Komponente wird separat addiert.
[constexpr noexcept] QSize operator-(const QSize &s1, const QSize &s2)
Gibt das Ergebnis von „ s2 “ abzüglich „ s1 “ zurück; jede Komponente wird separat abgezogen.
QSize operator/(const QSize &size, qreal divisor)
Teilt die angegebene Zahl ` size ` durch die angegebene Zahl ` divisor` und gibt das auf die nächste ganze Zahl gerundete Ergebnis zurück.
Siehe auch QSize::scale().
QDataStream &operator<<(QDataStream &stream, const QSize &size)
Schreibt den angegebenen „ size “ in den angegebenen „ stream “ und gibt eine Referenz auf den Stream zurück.
Siehe auch „Serialisierung vonQt-Datentypen“.
[constexpr noexcept] bool operator==(const QSize &lhs, const QSize &rhs)
Gibt „ true “ zurück, wenn „ lhs “ und „ rhs “ gleich sind; andernfalls wird „ false “ zurückgegeben.
QDataStream &operator>>(QDataStream &stream, QSize &size)
Liest eine Größe aus dem angegebenen ` stream ` in den angegebenen ` size` und gibt eine Referenz auf den Stream zurück.
Siehe auch „Serialisierung vonQt-Datentypen“.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.