Описание класса QSizeF [Модуль QtCore]
Класс QSizeF определяет размер двумерного объекта, используя точность плавающей запятой. Далее...
#include <QSizeF>
Открытые функции
Связанные нечлены класса
- bool operator!= ( const QSizeF & s1, const QSizeF & s2 )
- const QSizeF operator* ( const QSizeF & size, qreal factor )
- const QSizeF operator* ( qreal factor, const QSizeF & size )
- const QSizeF operator+ ( const QSizeF & s1, const QSizeF & s2 )
- const QSizeF operator- ( const QSizeF & s1, const QSizeF & s2 )
- const QSizeF operator/ ( const QSizeF & size, qreal divisor )
- QDataStream & operator<< ( QDataStream & stream, const QSizeF & size )
- bool operator== ( const QSizeF & s1, const QSizeF & s2 )
- QDataStream & operator>> ( QDataStream & stream, QSizeF & size )
Подробное описание
Класс QSizeF определяет размер двумерного объекта, используя точность плавающей запятой.
Размер определяется шириной - width() и высотой - height(). Он может быть установлен в конструкторе и изменён, используя функции setWidth(), setHeight(), или scale(), или используя арифметические операторы. Размер также может быть изменён непосредственно, получая ссылку на ширину и высоту, используя функции rwidth() и rheight(). В заключение, ширину и высоту можно поменять местами, используя функцию transpose().
Функция isValid() определяет, является ли размер действительным. Действительный размер имеет и ширину, и высоту больше либо равные нулю. Функция isEmpty() возвращает true если ширина и высота меньше чем нуль (или равна нулю), в то время как функция isNull() возвращает true только если оба, и ширина и высота, равны нулю.
Используйте функцию expandedTo(), чтобы получить размер, который содержит максимальные высоту и ширину этого размера и заданного размера. Аналогично, функция boundedTo() возвращает размер, который содержит минимальные высоту и ширину этого размера и заданного размера.
Класс QSizeF также предоставляет функцию toSize(), возвращающую QSize - копию этого размера, сконструированную посредством округления ширины и высоты до ближайшего целого.
Объект QSizeF может быть выведен в поток так же просто, как и сравниваться.
Смотрите также QSize, QPointF, и QRectF.
Описание функций-членов
QSizeF::QSizeF ()
Конструирует недействительный размер.
Смотрите также isValid().
QSizeF::QSizeF ( const QSize & size )
Конструирует размер используя точность плавающей запятой, из заданного размера size.
Смотрите также toSize().
QSizeF::QSizeF ( qreal width, qreal height )
Конструирует размер с заданными шириной (width) и высотой (height).
QSizeF QSizeF::boundedTo ( const QSizeF & otherSize ) const
Возвращает размер содержащий минимальные ширину и высоту этого размера и заданного другого (otherSize) размера.
Смотрите также expandedTo() и scale().
QSizeF QSizeF::expandedTo ( const QSizeF & otherSize ) const
Возвращает размер, содержащий максимальные ширину и высоту этого размера и заданного другого (otherSize) размера.
Смотрите также boundedTo() и scale().
qreal QSizeF::height () const
Возвращает высоту.
Смотрите также width() и setHeight().
bool QSizeF::isEmpty () const
Возвращает true если ширина и высота меньше или равны 0; в противном случае возвращает false.
Смотрите также isNull() и isValid().
bool QSizeF::isNull () const
Возвращает true если и ширина и высота равны 0; в противном случае возвращает false.
Смотрите также isValid() и isEmpty().
bool QSizeF::isValid () const
Возвращает true если и ширина и высота равны или больше 0; в противном случае возвращает false.
Смотрите также isNull() и isEmpty().
qreal & QSizeF::rheight ()
Возвращает ссылку на высоту.
Использование ссылки делает возможным работать с высотой непосредственно. Например:
QSizeF size(100, 10.2);
size.rheight() += 5.5;
Смотрите также rwidth() и setHeight().
qreal & QSizeF::rwidth ()
Возвращает ссылку на ширину.
Использование ссылки делает возможным работать с шириной непосредственно. Например:
QSizeF size(100.3, 10);
size.rwidth() += 20.5;
Смотрите также rheight() и setWidth().
Масштабирует размер к прямоугольнику с заданными шириной (width) и высотой (height), в соответствии с заданным режимом (mode).
- Если mode равен Qt::IgnoreAspectRatio, размер устанавливается в (width, height).
- Если mode равен Qt::KeepAspectRatio, текущий размер масштабируется до возможно большего прямоугольника внутри прямоугольной области (width, height), сохраняя пропорции.
- Если mode равен Qt::KeepAspectRatioByExpanding, текущий размер масштабируется до возможно меньшего прямоугольника снаружи области (width, height), сохраняя пропорции.
Пример:
QSizeF t1(10, 12);
t1.scale(60, 60, Qt::IgnoreAspectRatio);
QSizeF t2(10, 12);
t2.scale(60, 60, Qt::KeepAspectRatio);
QSizeF t3(10, 12);
t3.scale(60, 60, Qt::KeepAspectRatioByExpanding);
Смотрите также setWidth() и setHeight().
void QSizeF::scale ( const QSizeF & size, Qt::AspectRatioMode mode )
Это перегруженная функция, предоставленная для удобства.
Масштабирует размер к прямоугольнику с заданным размером (size), в соответствии с заданным режимом (mode):
void QSizeF::setHeight ( qreal height )
Устанавливает высоту в заданную (height).
Смотрите также height(), rheight(), и setWidth().
void QSizeF::setWidth ( qreal width )
Устанавливает ширину в заданную (width).
Смотрите также width(), rwidth(), и setHeight().
QSize QSizeF::toSize () const
Возвращает копию этого размера на основе целых чисел.
Заметьте, что координаты в возвращаемом размере будут округлены до ближайшего целого.
Смотрите также QSizeF().
void QSizeF::transpose ()
Меняет местами значения ширины и высоты.
Смотрите также setWidth() и setHeight().
qreal QSizeF::width () const
Возвращает ширину.
Смотрите также height() и setWidth().
QSizeF & QSizeF::operator*= ( qreal factor )
Умножает и ширину и высоту на заданный множитель (factor), и возвращает ссылку на размер.
Смотрите также scale().
QSizeF & QSizeF::operator+= ( const QSizeF & size )
Прибавляет заданный размер (size) к этому размеру, и возвращает ссылку на этот размер. Например:
QSizeF s( 3, 7);
QSizeF r(-1, 4);
s += r;
QSizeF & QSizeF::operator-= ( const QSizeF & size )
Вычитает заданный размер (size) из этого размера, и возвращает ссылку на этот размер. Например:
QSizeF s( 3, 7);
QSizeF r(-1, 4);
s -= r;
QSizeF & QSizeF::operator/= ( qreal divisor )
Делит и ширину, и высоту на заданный делитель (divisor), и возвращает ссылку на размер.
Смотрите также scale().
Связанные нечлены класса
bool operator!= ( const QSizeF & s1, const QSizeF & s2 )
Это перегруженная функция, предоставленная для удобства.
Возвращает true если s1 и s2 неравны; в противном случае возвращает false.
const QSizeF operator* ( const QSizeF & size, qreal factor )
Это перегруженная функция, предоставленная для удобства.
Умножает заданный размер (size) на заданный множитель (factor), и возвращает результат.
Смотрите также QSizeF::scale().
const QSizeF operator* ( qreal factor, const QSizeF & size )
Это перегруженная функция, предоставленная для удобства.
Умножает заданный размер (size) на заданный множитель (factor), и возвращает результат.
const QSizeF operator+ ( const QSizeF & s1, const QSizeF & s2 )
Это перегруженная функция, предоставленная для удобства.
Возвращает сумму s1 и s2; каждый компонент добавляется отдельно.
const QSizeF operator- ( const QSizeF & s1, const QSizeF & s2 )
Это перегруженная функция, предоставленная для удобства.
Возвращает разность s2 и s1; каждый компонент вычитается отдельно.
const QSizeF operator/ ( const QSizeF & size, qreal divisor )
Это перегруженная функция, предоставленная для удобства.
Делит заданный размер (size) на заданный делитель (divisor), и возвращает результат.
Смотрите также QSizeF::scale().
QDataStream & operator<< ( QDataStream & stream, const QSizeF & size )
Это перегруженная функция, предоставленная для удобства.
Записывает размер size в заданный поток stream, и возвращает ссылку на поток.
Смотрите также Формат операторов QDataStream.
bool operator== ( const QSizeF & s1, const QSizeF & s2 )
Это перегруженная функция, предоставленная для удобства.
Возвращает true если s1 и s2 равны; в противном случае возвращает false.
Это перегруженная функция, предоставленная для удобства.
Читает размер из потока stream в заданный размер size, и возвращает ссылку на поток.
Смотрите также Формат операторов QDataStream.
|