Spec-Zone.ru › Qt 6.1

Класс QSize

Класс QSize определяет размер двумерного объекта с использованием целочисленной точности. Подробнее...

Header: #include <QSize>
CMake: find_package(Qt6 COMPONENTS Core REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
  • Список всех членов, включая унаследованные члены

Открытые функции

QSize(int width, int height)
QSize()
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
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 &s1, const QSize &s2)
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 &s1, const QSize &s2)
QDataStream & operator>>(QDataStream &stream, QSize &size)

Подробное описание

Размер задается с помощью width() и height(). Его можно установить в конструкторе и изменить с помощью функций setWidth(), setHeight() или scale(), или с помощью арифметических операторов. Размер также можно изменить напрямую, получив ссылки на ширину и высоту с помощью функций rwidth() и rheight(). Наконец, ширину и высоту можно поменять местами с помощью функции transpose().

Функция isValid() определяет, является ли размер допустимым (допустимый размер имеет ширину и высоту больше или равные нулю). Функция isEmpty() возвращает true если ширина или высота меньше или равны нулю, а функция isNull() возвращает true только если и ширина, и высота равны нулю.

Используйте функцию expandedTo() для получения размера, содержащего максимальную высоту и ширину этого размера и заданного размера. Аналогично, функция boundedTo() возвращает размер, содержащий минимальную высоту и ширину этого размера и заданного размера.

Объекты QSize могут быть сериализованы, а также сравнены.

См. также QSizeF, QPoint и QRect.

Документация по функциям-членам

QSize QSize::shrunkBy(QMargins margins) const

Возвращает размер, полученный в результате уменьшения этого размера на margins.

Эта функция была добавлена в Qt 5.14.

См. также grownBy().

QSize QSize::grownBy(QMargins margins) const

Возвращает размер, полученный в результате увеличения этого размера на margins.

Эта функция была добавлена в Qt 5.14.

См. также shrunkBy().

QSize::QSize(int width, int height)

Конструирует размер с заданной width и height.

См. также setWidth() и setHeight().

QSize::QSize()

Конструирует размер с недопустимой шириной и высотой (т. е. isValid() возвращает false).

См. также isValid().

QSize QSize::boundedTo(const QSize &otherSize) const

Возвращает размер, содержащий минимальную ширину и высоту этого размера и заданного otherSize.

См. также expandedTo() и scale().

QSize QSize::expandedTo(const QSize &otherSize) const

Возвращает размер, содержащий максимальную ширину и высоту этого размера и заданного otherSize.

См. также boundedTo() и scale().

int QSize::height() const

Возвращает высоту.

См. также width() и setHeight().

bool QSize::isEmpty() const

Возвращает true если ширина или высота меньше или равны 0; в противном случае возвращает false.

См. также isNull() и isValid().

bool QSize::isNull() const

Возвращает true если и ширина, и высота равны 0; в противном случае возвращает false.

См. также isValid() и isEmpty().

bool QSize::isValid() const

Возвращает true если и ширина, и высота равны или больше 0; в противном случае возвращает false.

См. также isNull() и isEmpty().

int &QSize::rheight()

Возвращает ссылку на высоту.

Использование ссылки позволяет непосредственно манипулировать высотой. Например:

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

// size becomes (100,15)

См. также rwidth() и setHeight().

int &QSize::rwidth()

Возвращает ссылку на ширину.

Использование ссылки позволяет непосредственно манипулировать шириной. Например:

QSize size(100, 10);
size.rwidth() += 20;

// size becomes (120,10)

См. также rheight() и setWidth().

void QSize::scale(int width, int height, Qt::AspectRatioMode 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().

void QSize::scale(const QSize &size, Qt::AspectRatioMode mode)

Это перегруженный метод.

Масштабирует размер до прямоугольника с заданным размером size, согласно заданному режиму.

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

Возвращает размер, масштабированный до прямоугольника с заданной шириной и высотой, согласно заданному режиму.

Эта функция была добавлена в Qt 5.0.

См. также scale().

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

Это перегруженный метод.

Возвращает размер, масштабированный до прямоугольника с заданным размером s, согласно заданному режиму.

Эта функция была добавлена в Qt 5.0.

void QSize::setHeight(int height)

Устанавливает высоту на заданную height.

См. также rheight(), height(), и setWidth().

void QSize::setWidth(int width)

Устанавливает ширину на заданную width.

См. также rwidth(), width(), и setHeight().

[since 5.8] CGSize QSize::toCGSize() const

Создаёт CGSize из QSize.

Эта функция была добавлена в Qt 5.8.

См. также QSizeF::fromCGSize().

void QSize::transpose()

Меняет местами значения ширины и высоты.

См. также setWidth(), setHeight(), и transposed().

[since 5.0] QSize QSize::transposed() const

Возвращает QSize с переставленными шириной и высотой.

Эта функция была добавлена в Qt 5.0.

См. также transpose().

int QSize::width() const

Возвращает ширину.

См. также height() и setWidth().

QSize &QSize::operator*=(qreal factor)

Это перегруженный метод.

Умножает ширину и высоту на заданный factor и возвращает ссылку на размер.

Обратите внимание, что результат округляется до ближайшего целого числа.

См. также scale().

QSize &QSize::operator+=(const QSize &size)

Добавляет заданный size к текущему размеру и возвращает ссылку на этот размер. Например:

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

// s becomes (2,11)

QSize &QSize::operator-=(const QSize &size)

Вычитает заданный size из текущего размера и возвращает ссылку на этот размер. Например:

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

// s becomes (4,3)

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

Это перегруженный метод.

Делит ширину и высоту на заданный divisor и возвращает ссылку на размер.

Обратите внимание, что результат округляется до ближайшего целого числа.

См. также QSize::scale().

Связанные не члены

bool operator!=(const QSize &s1, const QSize &s2)

Возвращает true если s1 и s2 разные; в противном случае возвращает false.

QSize operator*(const QSize &size, qreal factor)

Умножает заданную size на заданный factor и возвращает результат, округлённый до ближайшего целого числа.

См. также QSize::scale().

QSize operator*(qreal factor, const QSize &size)

Это перегруженная функция.

Умножает заданную size на заданный factor и возвращает результат, округлённый до ближайшего целого числа.

QSize operator+(const QSize &s1, const QSize &s2)

Возвращает сумму s1 и s2; каждый компонент складывается отдельно.

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.

bool operator==(const QSize &s1, const QSize &s2)

Возвращает true если s1 и s2 равны; в противном случае возвращает false.

QDataStream &operator>>(QDataStream &stream, QSize &size)

Считывает размер из заданного stream в заданный size и возвращает ссылку на поток.

См. также Сериализация типов данных Qt.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qsize.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API