QSize Class

Die Klasse QSize definiert die Größe eines zweidimensionalen Objekts mit ganzzahliger Punktgenauigkeit. Mehr...

Kopfzeile: #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)
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)

Detaillierte Beschreibung

Eine Größe wird durch width() und height() angegeben. Sie kann im Konstruktor festgelegt und mit den Funktionen setWidth(), setHeight() oder scale() oder mit arithmetischen Operatoren geändert werden. Eine Größe kann auch direkt manipuliert werden, indem mit den Funktionen rwidth() und rheight() Referenzen auf die Breite und Höhe abgerufen werden. Schließlich können Breite und Höhe mit der Funktion transpose() vertauscht werden.

Die Funktion isValid() bestimmt, ob eine Größe gültig ist (eine gültige Größe hat sowohl Breite als auch 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() true nur zurückgibt, wenn sowohl die Breite als auch die Höhe Null ist.

Verwenden Sie die Funktion expandedTo(), um eine Größe abzurufen, die die maximale Höhe und Breite dieser Größe und einer bestimmten Größe enthält. In ähnlicher Weise gibt die Funktion boundedTo() eine Größe zurück, die die minimale Höhe und Breite dieser Größe und einer gegebenen Größe enthält.

QSize-Objekte können sowohl gestreamt als auch verglichen werden.

Siehe auch QSizeF, QPoint, und QRect.

Dokumentation der Mitgliedsfunktionen

[constexpr noexcept] QSize QSize::grownBy(QMargins margins) const

Gibt die Größe zurück, die sich aus der Vergrößerung dieser Größe um margins ergibt.

Siehe auch shrunkBy().

[constexpr noexcept] QSize QSize::shrunkBy(QMargins margins) const

Gibt die Größe zurück, die sich aus der Verkleinerung dieser Größe um margins ergibt.

Siehe auch grownBy().

[constexpr noexcept] QSize::QSize()

Konstruiert eine Größe mit einer ungültigen Breite und Höhe (d. h. isValid() gibt false zurück).

Siehe auch isValid().

[constexpr noexcept] QSize::QSize(int width, int height)

Konstruiert eine Größe mit den angegebenen 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 und die angegebene otherSize enthält.

Siehe auch expandedTo() und scale().

[constexpr noexcept] QSize QSize::expandedTo(const QSize &otherSize) const

Gibt eine Größe zurück, die die maximale Breite und Höhe dieser Größe und die angegebene otherSize enthält.

Siehe auch boundedTo() und scale().

[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 einer der beiden Werte für Breite und 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 ist; 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 gleich oder größer als 0 ist; andernfalls wird false zurückgegeben.

Siehe auch isNull() und isEmpty().

[constexpr noexcept] int &QSize::rheight()

Gibt einen Verweis auf die Höhe zurück.

Die Verwendung eines Verweises ermöglicht es, die Höhe direkt zu manipulieren. Ein Beispiel:

QSize size(100, 10);
size.rheight() += 5;

// size becomes (100,15)

Siehe auch rwidth() und setHeight().

[constexpr noexcept] int &QSize::rwidth()

Gibt einen Verweis auf die Breite zurück.

Die Verwendung eines Verweises ermöglicht es, die Breite direkt zu manipulieren. Ein 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 dem angegebenen width und height, entsprechend dem angegebenen mode:

  • Wenn mode gleich Qt::IgnoreAspectRatio ist, wird die Größe auf (width, height) gesetzt.
  • Wenn mode gleich Qt::KeepAspectRatio ist, wird die aktuelle Größe auf ein Rechteck skaliert, das so groß wie möglich innerhalb von (width, height) ist, wobei das Seitenverhältnis erhalten bleibt.
  • Wenn mode gleich Qt::KeepAspectRatioByExpanding ist, wird die aktuelle Größe auf ein Rechteck skaliert, das so klein wie möglich außerhalb von (width, height) ist, 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)

Dies ist eine überladene Funktion.

Skaliert die Größe auf ein Rechteck mit der angegebenen size, entsprechend der angegebenen mode.

[noexcept] QSize QSize::scaled(int width, int height, Qt::AspectRatioMode mode) const

Gibt eine Größe zurück, die auf ein Rechteck mit dem angegebenen width und height skaliert ist, entsprechend dem angegebenen mode.

Siehe auch scale().

[noexcept] QSize QSize::scaled(const QSize &s, Qt::AspectRatioMode mode) const

Dies ist eine überladene Funktion.

Gibt eine Größe zurück, die auf ein Rechteck mit der angegebenen Größe s skaliert ist, entsprechend der angegebenen mode.

[constexpr noexcept] void QSize::setHeight(int height)

Setzt die Höhe auf die angegebene height.

Siehe auch rheight(), height(), und setWidth().

[constexpr noexcept] void QSize::setWidth(int width)

Setzt die Breite auf die angegebene width.

Siehe auch rwidth(), width(), und setHeight().

[noexcept] CGSize QSize::toCGSize() const

Erzeugt eine CGSize aus einer QSize.

Siehe auch QSizeF::fromCGSize().

[constexpr noexcept, since 6.4] QSizeF QSize::toSizeF() const

Gibt diese Größe als Größe mit Fließkommagenauigkeit zurück.

Diese Funktion wurde in Qt 6.4 eingeführt.

Siehe auch QSizeF::toSize().

[noexcept] void QSize::transpose()

Vertauscht die Werte für Breite und Höhe.

Siehe auch setWidth(), setHeight(), und transposed().

[constexpr noexcept] QSize QSize::transposed() const

Liefert ein QSize mit vertauschter Breite und Höhe.

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)

Dies ist eine überladene Funktion.

Multipliziert sowohl die Breite als auch die Höhe mit der angegebenen factor und gibt eine Referenz auf die Größe zurück.

Beachten Sie, dass das Ergebnis auf die nächste Ganzzahl gerundet wird.

Siehe auch scale().

[constexpr noexcept] QSize &QSize::operator+=(const QSize &size)

Addiert die angegebene size zu dieser Größe und gibt einen Verweis auf diese Größe zurück. Zum Beispiel:

QSize s( 3, 7);
QSize r(-1, 4);
s += r;

// s becomes (2,11)

[constexpr noexcept] QSize &QSize::operator-=(const QSize &size)

Subtrahiert die angegebene size von dieser Größe und gibt einen Verweis auf diese Größe zurück. Zum Beispiel:

QSize s( 3, 7);
QSize r(-1, 4);
s -= r;

// s becomes (4,3)

QSize &QSize::operator/=(qreal divisor)

Dies ist eine überladene Funktion.

Teilt sowohl die Breite als auch die Höhe durch die angegebene divisor und gibt eine Referenz auf die Größe zurück.

Beachten Sie, dass das Ergebnis auf die nächste Ganzzahl 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 die angegebene size mit der angegebenen factor und gibt das Ergebnis gerundet auf die nächste Ganzzahl zurück.

Siehe auch QSize::scale().

[constexpr noexcept] QSize operator*(qreal factor, const QSize &size)

Dies ist eine überladene Funktion.

Multipliziert die angegebene size mit der angegebenen factor und gibt das Ergebnis gerundet auf die nächste Ganzzahl zurück.

[constexpr noexcept] QSize operator+(const QSize &s1, const QSize &s2)

Gibt die Summe von s1 und s2 zurück; jede Komponente wird separat addiert.

[constexpr noexcept] QSize operator-(const QSize &s1, const QSize &s2)

Gibt s2 subtrahiert von s1 zurück; jede Komponente wird separat subtrahiert.

QSize operator/(const QSize &size, qreal divisor)

Dies ist eine überladene Funktion.

Dividiert die angegebene size durch die angegebene divisor und gibt das Ergebnis gerundet auf die nächste Ganzzahl 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 von Qt-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 von Qt-Datentypen.

© 2025 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.