QSize Class
La classe QSize définit la taille d'un objet bidimensionnel en utilisant une précision de point entière. Plus d'informations...
| En-tête : | #include <QSize> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Core)target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake : | QT += core |
- Liste de tous les membres, y compris les membres hérités
- QSize fait partie des classes de peinture.
Fonctions publiques
| 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) |
Non-membres apparentés
| 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) |
Description détaillée
Une taille est spécifiée par une width() et une height(). Elle peut être définie dans le constructeur et modifiée à l'aide des fonctions setWidth(), setHeight() ou scale(), ou à l'aide d'opérateurs arithmétiques. Une taille peut également être manipulée directement en récupérant des références à la largeur et à la hauteur à l'aide des fonctions rwidth() et rheight(). Enfin, la largeur et la hauteur peuvent être échangées à l'aide de la fonction transpose().
La fonction isValid() détermine si une taille est valide (une taille valide a une largeur et une hauteur supérieures ou égales à zéro). La fonction isEmpty() renvoie true si la largeur et la hauteur sont inférieures ou égales à zéro, tandis que la fonction isNull() renvoie true uniquement si la largeur et la hauteur sont toutes deux égales à zéro.
La fonction expandedTo() permet d'obtenir une taille qui contient la hauteur et la largeur maximales de cette taille et d'une taille donnée. De même, la fonction boundedTo() renvoie une taille qui contient la hauteur et la largeur minimales de cette taille et d'une taille donnée.
Les objets QSize peuvent être transmis en continu et comparés.
Voir également QSizeF, QPoint, et QRect.
Documentation des fonctions membres
[constexpr noexcept] QSize::QSize()
Construit une taille avec une largeur et une hauteur non valides (c'est-à-dire que isValid() renvoie false).
Voir aussi isValid().
[constexpr noexcept] QSize::QSize(int width, int height)
Construit une taille avec les données width et height.
Voir aussi setWidth() et setHeight().
[constexpr noexcept] QSize QSize::boundedTo(const QSize &otherSize) const
Renvoie une taille contenant la largeur et la hauteur minimales de cette taille et de l'adresse otherSize.
Voir aussi expandedTo() et scale().
[constexpr noexcept] QSize QSize::expandedTo(const QSize &otherSize) const
Renvoie une taille contenant la largeur et la hauteur maximales de cette taille et de l'adresse otherSize.
Voir aussi boundedTo() et scale().
[constexpr noexcept] QSize QSize::grownBy(QMargins margins) const
Renvoie la taille qui résulte de l'augmentation de cette taille par margins.
Voir aussi shrunkBy().
[constexpr noexcept] int QSize::height() const
Renvoie la hauteur.
Voir aussi width() et setHeight().
[constexpr noexcept] bool QSize::isEmpty() const
Renvoie true si la largeur et la hauteur sont inférieures ou égales à 0 ; sinon, renvoie false.
Voir aussi isNull() et isValid().
[constexpr noexcept] bool QSize::isNull() const
Renvoie true si la largeur et la hauteur sont toutes deux égales à 0 ; sinon, renvoie false.
Voir aussi isValid() et isEmpty().
[constexpr noexcept] bool QSize::isValid() const
Renvoie true si la largeur et la hauteur sont égales ou supérieures à 0 ; sinon, renvoie false.
Voir aussi isNull() et isEmpty().
[constexpr noexcept] int &QSize::rheight()
Renvoie une référence à la hauteur.
L'utilisation d'une référence permet de manipuler directement la hauteur. A titre d'exemple :
QSize size(100, 10); size.rheight() += 5; // size becomes (100,15)
Voir aussi rwidth() et setHeight().
[constexpr noexcept] int &QSize::rwidth()
Renvoie une référence à la largeur.
L'utilisation d'une référence permet de manipuler directement la largeur. Par exemple, l'utilisation d'une référence permet de manipuler directement la largeur :
QSize size(100, 10); size.rwidth() += 20; // size becomes (120,10)
Voir aussi rheight() et setWidth().
[noexcept] void QSize::scale(int width, int height, Qt::AspectRatioMode mode)
Redimensionne la taille d'un rectangle avec les adresses width et height, en fonction de l'adresse mode:
- Si mode est Qt::IgnoreAspectRatio, la taille est fixée à (width, height).
- Si mode est Qt::KeepAspectRatio, la taille actuelle est mise à l'échelle pour obtenir un rectangle aussi grand que possible à l'intérieur de (width, height), en préservant le rapport d'aspect.
- Si mode est Qt::KeepAspectRatioByExpanding, la taille actuelle est réduite à un rectangle aussi petit que possible à l'extérieur de (width, height), en préservant le rapport hauteur/largeur.
Exemple :
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)
Voir également setWidth(), setHeight() et scaled().
[noexcept] void QSize::scale(const QSize &size, Qt::AspectRatioMode mode)
Met à l'échelle la taille d'un rectangle avec l'adresse size, en fonction de l'adresse mode spécifiée.
Il s'agit d'une fonction surchargée.
[noexcept] QSize QSize::scaled(int width, int height, Qt::AspectRatioMode mode) const
Renvoie une taille adaptée à un rectangle avec les données width et height, en fonction de la taille spécifiée mode.
Voir aussi scale().
[noexcept] QSize QSize::scaled(const QSize &s, Qt::AspectRatioMode mode) const
Renvoie une taille mise à l'échelle d'un rectangle de la taille donnée s, en fonction de la taille spécifiée mode.
Il s'agit d'une fonction surchargée.
[constexpr noexcept] void QSize::setHeight(int height)
Fixe la hauteur à la valeur donnée height.
Voir aussi rheight(), height(), et setWidth().
[constexpr noexcept] void QSize::setWidth(int width)
Fixe la largeur à la valeur donnée width.
Voir aussi rwidth(), width(), et setHeight().
[constexpr noexcept] QSize QSize::shrunkBy(QMargins margins) const
Renvoie la taille qui résulte de la réduction de cette taille par margins.
Voir aussi grownBy().
[noexcept] CGSize QSize::toCGSize() const
Crée un CGSize à partir d'un QSize.
Voir aussi QSizeF::fromCGSize().
[constexpr noexcept, since 6.4] QSizeF QSize::toSizeF() const
Renvoie cette taille en tant que taille avec une précision en virgule flottante.
Cette fonction a été introduite dans Qt 6.4.
Voir aussi QSizeF::toSize().
[noexcept] void QSize::transpose()
Intervertit les valeurs de largeur et de hauteur.
Voir aussi setWidth(), setHeight() et transposed().
[constexpr noexcept] QSize QSize::transposed() const
Renvoie une page QSize dont la largeur et la hauteur ont été interverties.
Voir aussi transpose().
[constexpr noexcept] int QSize::width() const
Renvoie la largeur.
Voir aussi height() et setWidth().
[constexpr noexcept] QSize &QSize::operator*=(qreal factor)
Multiplie la largeur et la hauteur par factor, et renvoie une référence à la taille.
Le résultat est arrondi à l'entier le plus proche.
Voir aussi scale().
[constexpr noexcept] QSize &QSize::operator+=(const QSize &size)
Ajoute la valeur size à cette taille et renvoie une référence à cette taille. Par exemple :
[constexpr noexcept] QSize &QSize::operator-=(const QSize &size)
Soustrait la valeur size de cette taille et renvoie une référence à cette taille. Par exemple :
QSize &QSize::operator/=(qreal divisor)
Divise la largeur et la hauteur par divisor, et renvoie une référence à la taille.
Le résultat est arrondi à l'entier le plus proche.
Voir également QSize::scale().
Non-membres apparentés
[constexpr noexcept] bool operator!=(const QSize &lhs, const QSize &rhs)
Renvoie true si lhs et rhs sont différents ; sinon, renvoie false.
[constexpr noexcept] QSize operator*(const QSize &size, qreal factor)
Multiplie la valeur donnée size par la valeur donnée factor, et renvoie le résultat arrondi à l'entier le plus proche.
Voir aussi QSize::scale().
[constexpr noexcept] QSize operator*(qreal factor, const QSize &size)
Multiplie la valeur donnée size par la valeur donnée factor, et renvoie le résultat arrondi à l'entier le plus proche.
Il s'agit d'une fonction surchargée.
[constexpr noexcept] QSize operator+(const QSize &s1, const QSize &s2)
Renvoie la somme de s1 et s2; chaque composant est ajouté séparément.
[constexpr noexcept] QSize operator-(const QSize &s1, const QSize &s2)
Renvoie s2 soustrait de s1; chaque composant est soustrait séparément.
QSize operator/(const QSize &size, qreal divisor)
Divise la valeur size par la valeur divisor et renvoie le résultat arrondi à l'entier le plus proche.
Voir aussi QSize::scale().
QDataStream &operator<<(QDataStream &stream, const QSize &size)
Écrit la donnée size dans la donnée stream, et renvoie une référence au flux.
Voir aussi Serializing Qt Data Types (Sérialisation des types de données Qt).
[constexpr noexcept] bool operator==(const QSize &lhs, const QSize &rhs)
Renvoie true si lhs et rhs sont égaux ; sinon, renvoie false.
QDataStream &operator>>(QDataStream &stream, QSize &size)
Lit une taille à partir de l'adresse stream dans l'adresse size et renvoie une référence au flux.
Voir aussi Serializing Qt Data Types (Sérialisation des types de données Qt).
© 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.