QSize Class
QSize 클래스는 정수 점 정밀도를 사용하여 2차원 객체의 크기를 정의합니다. 더 보기...
| 헤더: | #include <QSize> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
- 상속된 멤버를 포함한 모든 멤버 목록
- QSize는 페인팅 클래스의 일부입니다.
공개 함수
| 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) |
상세 설명
크기는 width() 및 height()으로 지정됩니다. 크기는 생성자에서 설정할 수 있으며, setWidth(), setHeight() 또는 scale() 함수를 사용하거나 산술 연산자를 사용하여 변경할 수 있습니다. 또한 rwidth() 및 rheight() 함수를 사용하여 너비와 높이에 대한 참조를 가져와 크기를 직접 조작할 수도 있습니다. 마지막으로, ` transpose()` 함수를 사용하여 너비와 높이를 서로 바꿀 수 있습니다.
isValid() 함수는 크기가 유효한지 여부를 판단합니다(유효한 크기는 너비와 높이가 모두 0 이상인 경우입니다). isEmpty() 함수는 너비나 높이가 0 이하인 경우 true 를 반환하는 반면, isNull() 함수는 너비와 높이가 모두 0인 경우에만 true 를 반환합니다.
expandedTo() 함수를 사용하면 이 크기와 지정된 크기의 최대 높이와 너비를 포함하는 크기를 가져올 수 있습니다. 마찬가지로, boundedTo() 함수는 이 크기와 지정된 크기의 최소 높이와 너비를 포함하는 크기를 반환합니다.
QSize 객체는 비교할 수 있을 뿐만 아니라 스트리밍도 가능합니다.
QSizeF, QPoint 및 QRect도 참조하십시오 .
멤버 함수 문서
[constexpr noexcept] QSize::QSize()
유효하지 않은 너비와 높이를 가진 크기를 생성합니다(예: ` isValid()`는 ` false`를 반환합니다).
isValid()도 참조하십시오 .
[constexpr noexcept] QSize::QSize(int width, int height)
지정된 ` width ` 및 ` height`을 사용하여 크기를 생성합니다.
setWidth() 및 setHeight()도 참조하십시오 .
[constexpr noexcept] QSize QSize::boundedTo(const QSize &otherSize) const
이 크기와 지정된 otherSize 의 최소 너비 및 높이를 포함하는 크기를 반환합니다.
expandedTo() 및 scale()도 참조하십시오 .
[constexpr noexcept] QSize QSize::expandedTo(const QSize &otherSize) const
이 크기와 지정된 otherSize 의 최대 너비 및 높이를 포함하는 크기를 반환합니다.
boundedTo() 및 scale()도 참조하십시오 .
[constexpr noexcept] QSize QSize::grownBy(QMargins margins) const
이 크기를 margins 만큼 늘린 결과 크기를 반환합니다.
shrunkBy()도 참조하십시오 .
[constexpr noexcept] int QSize::height() const
높이를 반환합니다.
width() 및 setHeight()도 참조하십시오 .
[constexpr noexcept] bool QSize::isEmpty() const
너비나 높이가 0 이하인 경우 true 를 반환하고, 그렇지 않은 경우 false 를 반환합니다.
isNull() 및 isValid()도 참조하십시오 .
[constexpr noexcept] bool QSize::isNull() const
너비와 높이가 모두 0이면 true 를 반환하고, 그렇지 않으면 false를 반환합니다.
isValid() 및 isEmpty()도 참조하십시오 .
[constexpr noexcept] bool QSize::isValid() const
너비와 높이가 모두 0 이상인 경우 true 를 반환하고, 그렇지 않은 경우 false 를 반환합니다.
isNull() 및 isEmpty()도 참조하십시오 .
[constexpr noexcept] int &QSize::rheight()
높이에 대한 참조를 반환합니다.
참조를 사용하면 높이를 직접 조작할 수 있습니다. 예를 들어:
QSize size(100, 10);
size.rheight() += 5;
// size becomes (100,15)rwidth() 및 setHeight()도 참조하십시오 .
[constexpr noexcept] int &QSize::rwidth()
너비에 대한 참조를 반환합니다.
참조를 사용하면 너비를 직접 조작할 수 있습니다. 예를 들어:
QSize size(100, 10);
size.rwidth() += 20;
// size becomes (120,10)rheight() 및 setWidth()도 참조하십시오 .
[noexcept] void QSize::scale(int width, int height, Qt::AspectRatioMode mode)
지정된 width 및 height 에 따라, 지정된 mode 에 맞춰 크기를 직사각형으로 조정합니다:
- mode 가 Qt::IgnoreAspectRatio 인 경우, 크기는 (width, height)로 설정됩니다.
- mode 가 Qt::KeepAspectRatio 인 경우, 현재 크기는 종횡비를 유지한 채 (width, height) 내부에서 가능한 한 큰 직사각형으로 확장됩니다.
- mode 가 Qt::KeepAspectRatioByExpanding 인 경우, 현재 크기는 종횡비를 유지한 채 (width, height) 바깥쪽에 가능한 한 작게 맞도록 직사각형으로 조정됩니다.
예시:
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)setWidth(), setHeight() 및 scaled()도 참조하십시오 .
[noexcept] void QSize::scale(const QSize &size, Qt::AspectRatioMode mode)
지정된 size 에 따라, 지정된 mode 에 맞춰 크기를 직사각형으로 조정합니다.
이 함수는 오버로드된 함수입니다.
[noexcept] QSize QSize::scaled(int width, int height, Qt::AspectRatioMode mode) const
지정된 width 및 height 에 따라, 지정된 mode 에 맞춰 크기가 조정된 직사각형을 반환합니다.
scale()도 참조하십시오 .
[noexcept] QSize QSize::scaled(const QSize &s, Qt::AspectRatioMode mode) const
지정된 크기 s 에 맞춰, 지정된 mode 에 따라 크기가 조정된 직사각형을 반환합니다.
이 함수는 오버로드된 함수입니다.
[constexpr noexcept] void QSize::setHeight(int height)
높이를 지정된 height 로 설정합니다.
rheight(), height() 및 setWidth()도 참조하십시오 .
[constexpr noexcept] void QSize::setWidth(int width)
폭을 지정된 width 로 설정합니다.
rwidth(), width(), setHeight()도 참조하십시오 .
[constexpr noexcept] QSize QSize::shrunkBy(QMargins margins) const
이 크기를 margins 만큼 축소했을 때의 크기를 반환합니다.
grownBy()도 참조하십시오 .
[noexcept] CGSize QSize::toCGSize() const
QSize 를 사용하여 CGSize를 생성합니다.
QSizeF::fromCGSize()도 참조하십시오 .
[constexpr noexcept, since 6.4] QSizeF QSize::toSizeF() const
이 크기를 부동소수점 정밀도를 가진 크기로 반환합니다.
이 함수는 Qt 6.4에서 도입되었습니다.
QSizeF::toSize()도 참조하십시오 .
[noexcept] void QSize::transpose()
너비와 높이의 값을 서로 바꿉니다.
setWidth(), setHeight(), transposed()도 참조하십시오 .
[constexpr noexcept] QSize QSize::transposed() const
너비와 높이가 바뀐 ` QSize ` 객체를 반환합니다.
transpose()도 참조하십시오 .
[constexpr noexcept] int QSize::width() const
너비를 반환합니다.
height() 및 setWidth()도 참조하십시오 .
[constexpr noexcept] QSize &QSize::operator*=(qreal factor)
폭과 높이를 모두 지정된 ` factor` 값으로 곱한 후, 그 크기에 대한 참조를 반환합니다.
결과는 가장 가까운 정수로 반올림된다는 점에 유의하십시오.
scale()도 참조하십시오 .
[constexpr noexcept] QSize &QSize::operator+=(const QSize &size)
지정된 ` size `를 이 `size`에 더한 다음, 이 `size`에 대한 참조를 반환합니다. 예를 들어:
[constexpr noexcept] QSize &QSize::operator-=(const QSize &size)
지정된 ` size ` 값을 이 `size`에서 뺀 뒤, 이 `size`에 대한 참조를 반환합니다. 예를 들어:
QSize &QSize::operator/=(qreal divisor)
폭과 높이를 모두 지정된 ` divisor`로 나눈 뒤, 그 크기에 대한 참조를 반환합니다.
결과는 가장 가까운 정수로 반올림된다는 점에 유의하십시오.
QSize::scale()도 참조하십시오 .
관련 비회원 함수
[constexpr noexcept] bool operator!=(const QSize &lhs, const QSize &rhs)
lhs 와 rhs 가 서로 다를 경우 true 를 반환하고, 그렇지 않은 경우 false 를 반환합니다.
[constexpr noexcept] QSize operator*(const QSize &size, qreal factor)
지정된 size 에 지정된 factor 를 곱한 후, 그 결과를 가장 가까운 정수로 반올림하여 반환합니다.
QSize::scale()도 참조하십시오 .
[constexpr noexcept] QSize operator*(qreal factor, const QSize &size)
주어진 ` size `에 ` factor`를 곱한 뒤, 그 결과를 가장 가까운 정수로 반올림하여 반환합니다.
이 함수는 오버로드된 함수입니다.
[constexpr noexcept] QSize operator+(const QSize &s1, const QSize &s2)
s1 와 s2 의 합을 반환합니다. 각 성분은 별도로 더합니다.
[constexpr noexcept] QSize operator-(const QSize &s1, const QSize &s2)
s2 s1 에서 를 뺀 값을 반환합니다. 각 성분은 별도로 차감됩니다.
QSize operator/(const QSize &size, qreal divisor)
주어진 size 을 주어진 divisor 으로 나누고, 그 결과를 가장 가까운 정수로 반올림하여 반환합니다.
QSize::scale()도 참조하십시오 .
QDataStream &operator<<(QDataStream &stream, const QSize &size)
지정된 ` size `를 지정된 ` stream`에 기록하고, 해당 스트림에 대한 참조를 반환합니다.
'Qt 데이터 유형 직렬화'항목도 참조하십시오 .
[constexpr noexcept] bool operator==(const QSize &lhs, const QSize &rhs)
lhs 와 rhs 가 같을 경우 true 를 반환하고, 그렇지 않으면 false 를 반환합니다.
QDataStream &operator>>(QDataStream &stream, QSize &size)
지정된 ` stream `에서 ` size`로 크기를 읽어들이고, 스트림에 대한 참조를 반환합니다.
'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.