Класс QRect
Класс QRect определяет прямоугольник на плоскости с целочисленной точностью. Подробнее...
| Заголовок: | #include <QRect> |
| qmake: | QT += core |
Примечание: Все функции в этом классе являются перевходными.
Открытые функции
| QRect() | |
| QRect(const QPoint &topLeft, const QPoint &bottomRight) | |
| QRect(const QPoint &topLeft, const QSize &size) | |
| QRect(int x, int y, int width, int height) | |
| void | adjust(int dx1, int dy1, int dx2, int dy2) |
| QRect | adjusted(int dx1, int dy1, int dx2, int dy2) const |
| int | bottom() const |
| QPoint | bottomLeft() const |
| QPoint | bottomRight() const |
| QPoint | center() const |
| bool | contains(const QPoint &point, bool proper = false) const |
| bool | contains(const QRect &rectangle, bool proper = false) const |
| bool | contains(int x, int y) const |
| bool | contains(int x, int y, bool proper) const |
| void | getCoords(int *x1, int *y1, int *x2, int *y2) const |
| void | getRect(int *x, int *y, int *width, int *height) const |
| int | height() const |
| QRect | intersected(const QRect &rectangle) const |
| bool | intersects(const QRect &rectangle) const |
| bool | isEmpty() const |
| bool | isNull() const |
| bool | isValid() const |
| int | left() const |
| QRect | marginsAdded(const QMargins &margins) const |
| QRect | marginsRemoved(const QMargins &margins) const |
| void | moveBottom(int y) |
| void | moveBottomLeft(const QPoint &position) |
| void | moveBottomRight(const QPoint &position) |
| void | moveCenter(const QPoint &position) |
| void | moveLeft(int x) |
| void | moveRight(int x) |
| void | moveTo(int x, int y) |
| void | moveTo(const QPoint &position) |
| void | moveTop(int y) |
| void | moveTopLeft(const QPoint &position) |
| void | moveTopRight(const QPoint &position) |
| QRect | normalized() const |
| int | right() const |
| void | setBottom(int y) |
| void | setBottomLeft(const QPoint &position) |
| void | setBottomRight(const QPoint &position) |
| void | setCoords(int x1, int y1, int x2, int y2) |
| void | setHeight(int height) |
| void | setLeft(int x) |
| void | setRect(int x, int y, int width, int height) |
| void | setRight(int x) |
| void | setSize(const QSize &size) |
| void | setTop(int y) |
| void | setTopLeft(const QPoint &position) |
| void | setTopRight(const QPoint &position) |
| void | setWidth(int width) |
| void | setX(int x) |
| void | setY(int y) |
| QSize | size() const |
| int | top() const |
| QPoint | topLeft() const |
| QPoint | topRight() const |
| void | translate(int dx, int dy) |
| void | translate(const QPoint &offset) |
| QRect | translated(int dx, int dy) const |
| QRect | translated(const QPoint &offset) const |
| QRect | united(const QRect &rectangle) const |
| int | width() const |
| int | x() const |
| int | y() const |
| QRect | operator&(const QRect &rectangle) const |
| QRect & | operator&=(const QRect &rectangle) |
| QRect & | operator+=(const QMargins &margins) |
| QRect & | operator-=(const QMargins &margins) |
| QRect | operator|(const QRect &rectangle) const |
| QRect & | operator|=(const QRect &rectangle) |
Связанные нечленные функции
| bool | operator!=(const QRect &r1, const QRect &r2) |
| QRect | operator+(const QRect &rectangle, const QMargins &margins) |
| QRect | operator+(const QMargins &margins, const QRect &rectangle) |
| QRect | operator-(const QRect &lhs, const QMargins &rhs) |
| QDataStream & | operator<<(QDataStream &stream, const QRect &rectangle) |
| bool | operator==(const QRect &r1, const QRect &r2) |
| QDataStream & | operator>>(QDataStream &stream, QRect &rectangle) |
Подробное описание
Класс QRect определяет прямоугольник в плоскости с использованием целочисленной точности.
Прямоугольник обычно выражается как верхняя левая вершина и размер. Размер (QRect ширина и высота) всегда эквивалентен математическому прямоугольнику, который служит основой для его отрисовки.
QRect можно создать с набором левой, верхней, ширины и высоты целых чисел или из QPoint и QSize. Следующий код создаёт два идентичных прямоугольника.
QRect r1(100, 200, 11, 16); QRect r2(QPoint(100, 200), QSize(11, 16));
Существует третий конструктор, который создаёт QRect с использованием координат левого верхнего и правого нижнего углов, но мы рекомендуем избегать его использования. Причина в том, что по историческим причинам значения, возвращаемые функциями bottom() и right(), отличаются от истинного правого нижнего угла прямоугольника.
Класс QRect предоставляет набор функций, возвращающих различные координаты прямоугольника и позволяющих манипулировать ими. QRect также предоставляет функции для перемещения прямоугольника относительно различных координат. Кроме того, есть функция moveTo(), которая перемещает прямоугольник, оставляя его левый верхний угол в заданных координатах. В качестве альтернативы, функция translate() перемещает прямоугольник на заданный смещение относительно текущего положения, а функция translated() возвращает перемещённую копию этого прямоугольника.
Функция size() возвращает размеры прямоугольника в виде QSize. Размеры также можно получить отдельно с помощью функций width() и height(). Для изменения размеров используйте функции setSize(), setWidth() или setHeight(). В качестве альтернативы, размер можно изменить, применив любую из функций, устанавливающих координаты прямоугольника, например, setBottom() или setRight().
Функция contains() показывает, находится ли заданная точка внутри прямоугольника, а функция intersects() возвращает true если этот прямоугольник пересекается с заданным прямоугольником. Класс QRect также предоставляет функцию intersected(), которая возвращает пересекающийся прямоугольник, и функцию united(), которая возвращает прямоугольник, содержащий заданный прямоугольник и этот:
| intersected() | united() |
Функция isEmpty() возвращает true если left() > right() или top() > bottom(). Обратите внимание, что пустой прямоугольник недействителен: функция isValid() возвращает true если left() <= right() и top() <= bottom(). Пустой прямоугольник (isNull() == true), с другой стороны, имеет ширину и высоту, равную 0.
Обратите внимание, что из-за того, как определены QRect и QRectF, пустой QRect определяется по существу так же, как и QRectF.
Наконец, объекты QRect можно передавать и сравнивать.
Отрисовка
При использовании антиалиасингового рисовальщика, граница QRect будет отрисована симметрично по обе стороны от границы математического прямоугольника. Но при использовании алиасингового рисовальщика (по умолчанию) применяются другие правила.
Затем, при отрисовке линией толщиной в один пиксель, граница QRect будет отрисована справа и ниже границы математического прямоугольника.
При отрисовке линией толщиной в два пикселя, линия границы будет разделена пополам математическим прямоугольником. Это будет так всегда, когда толщина пера задана чётным числом пикселей, а при отрисовке пером с нечётным числом пикселей, дополнительный пиксель будет отрисован справа и ниже математического прямоугольника, как и в случае с одним пикселем.
| Логическое представление | Линия толщиной в один пиксель |
| Линия толщиной в два пикселя | Линия толщиной в три пикселя |
Координаты
Класс QRect предоставляет набор функций, возвращающих различные координаты прямоугольника и позволяющих манипулировать ими. QRect также предоставляет функции для перемещения прямоугольника относительно различных координат.
Например, функции left(), setLeft() и moveLeft() в качестве примера: left() возвращает координату x левой стороны прямоугольника, setLeft() устанавливает левую сторону прямоугольника в заданную координату x (она может изменить ширину, но никогда не изменит правую сторону прямоугольника), а moveLeft() перемещает весь прямоугольник по горизонтали, оставляя левую сторону прямоугольника в заданной координате x и сохраняя его размер неизменным.
Обратите внимание, что по историческим причинам значения, возвращаемые функциями bottom() и right(), отличаются от истинного правого нижнего угла прямоугольника: Функция right() возвращает left() + width() - 1, а функция bottom() возвращает top() + height() - 1. То же самое относится к точке, возвращаемой удобной функцией bottomRight(). Кроме того, координаты x и y функций topRight() и bottomLeft() соответственно, содержат ту же погрешность, что и для правого и нижнего краёв.
Рекомендуется использовать x() + width() и y() + height() для нахождения истинного правого нижнего угла и избегать right() и bottom(). Другое решение — использовать QRectF: класс QRectF определяет прямоугольник в плоскости с использованием точности чисел с плавающей запятой для координат, и функции QRectF::right() и QRectF::bottom() действительно возвращают правые и нижние координаты.
Также можно добавить смещения к координатам этого прямоугольника с помощью функции adjust(), а также получить новый прямоугольник на основе корректировок исходного с помощью функции adjusted(). Если ширина или высота отрицательны, используйте функцию normalized() для получения прямоугольника, где углы поменяны местами.
Кроме того, QRect предоставляет функцию getCoords(), которая извлекает положение левого верхнего и правого нижнего углов прямоугольника, и функцию getRect(), которая извлекает левый верхний угол, ширину и высоту прямоугольника. Используйте функции setCoords() и setRect() для одновременной обработки координат и размеров прямоугольника.
Ограничения
QRect ограничен минимальными и максимальными значениями для типа int. Операции над QRect, которые могут привести к значениям вне этого диапазона, приведут к неопределенному поведению.
Документация функций-членов
QRect::QRect()
Создаёт прямоугольник по умолчанию.
См. также isNull().
QRect::QRect(const QPoint &topLeft, const QPoint &bottomRight)
Создаёт прямоугольник с заданными углами topLeft и bottomRight.
См. также setTopLeft() и setBottomRight().
QRect::QRect(const QPoint &topLeft, const QSize &size)
Создаёт прямоугольник с заданным углом topLeft и размером size.
См. также setTopLeft() и setSize().
QRect::QRect(int x, int y, int width, int height)
Создаёт прямоугольник с верхним левым углом (x, y) и заданными шириной и высотой.
См. также setRect().
void QRect::adjust(int dx1, int dy1, int dx2, int dy2)
Добавляет dx1, dy1, dx2 и dy2 соответственно к существующим координатам прямоугольника.
См. также adjusted() и setRect().
QRect QRect::adjusted(int dx1, int dy1, int dx2, int dy2) const
Возвращает новый прямоугольник, к которому добавлены dx1, dy1, dx2 и dy2 соответственно к существующим координатам этого прямоугольника.
См. также adjust().
int QRect::bottom() const
Возвращает y-координату нижней грани прямоугольника.
Обратите внимание, что по историческим причинам эта функция возвращает top() + height() - 1; используйте y() + height() для получения истинной y-координаты.
См. также setBottom(), bottomLeft(), и bottomRight().
QPoint QRect::bottomLeft() const
Возвращает положение нижнего левого угла прямоугольника. Обратите внимание, что по историческим причинам эта функция возвращает QPoint(left(), top() + height() - 1).
См. также setBottomLeft(), bottom(), и left().
QPoint QRect::bottomRight() const
Возвращает положение нижнего правого угла прямоугольника.
Обратите внимание, что по историческим причинам эта функция возвращает QPoint(left() + width() -1, top() + height() - 1).
См. также setBottomRight(), bottom(), и right().
QPoint QRect::center() const
Возвращает центральную точку прямоугольника.
См. также moveCenter().
bool QRect::contains(const QPoint &point, bool proper = false) const
Возвращает true если заданная точка point находится внутри или на границе прямоугольника, в противном случае возвращает false. Если proper равно true, функция возвращает true только если заданная point находится внутри прямоугольника (т. е. не на границе).
См. также intersects().
bool QRect::contains(const QRect &rectangle, bool proper = false) const
Это перегруженная функция.
Возвращает true если заданный прямоугольник rectangle находится внутри этого прямоугольника, в противном случае возвращает false. Если proper равно true, функция возвращает true только если прямоугольник полностью находится внутри этого прямоугольника (не на границе).
bool QRect::contains(int x, int y) const
Это перегруженная функция.
Возвращает true если точка (x, y) находится внутри этого прямоугольника, в противном случае возвращает false.
bool QRect::contains(int x, int y, bool proper) const
Это перегруженная функция.
Возвращает true если точка (x, y) находится внутри или на границе прямоугольника, в противном случае возвращает false. Если proper равно true, функция возвращает true только если точка полностью внутри прямоугольника (не на границе).
void QRect::getCoords(int *x1, int *y1, int *x2, int *y2) const
Извлекает положение верхнего левого угла прямоугольника в *x1 и *y1, а положение нижнего правого угла в *x2 и *y2.
См. также setCoords() и getRect().
void QRect::getRect(int *x, int *y, int *width, int *height) const
Извлекает положение верхнего левого угла прямоугольника в *x и *y, а размеры в *width и *height.
См. также setRect() и getCoords().
int QRect::height() const
Возвращает высоту прямоугольника.
См. также setHeight(), width(), и size().
QRect QRect::intersected(const QRect &rectangle) const
Возвращает пересечение этого прямоугольника и заданного прямоугольника rectangle. Заметьте, что r.intersected(s) эквивалентно r & s.
Эта функция была добавлена в Qt 4.2.
См. также intersects(), united(), и operator&=().
bool QRect::intersects(const QRect &rectangle) const
Возвращает true если этот прямоугольник пересекается с заданным прямоугольником rectangle (т. е. существует хотя бы один пиксель, находящийся в обоих прямоугольниках), в противном случае возвращает false.
Прямоугольник пересечения можно получить с помощью функции intersected().
См. также contains().
bool QRect::isEmpty() const
Возвращает true если прямоугольник пуст, в противном случае возвращает false.
Пустой прямоугольник имеет left() > right() или top() > bottom(). Пустой прямоугольник не является допустимым (т. е., isEmpty() == !isValid()).
Используйте функцию normalized() для получения прямоугольника, где углы поменяны местами.
См. также isNull(), isValid(), и normalized().
bool QRect::isNull() const
Возвращает true если прямоугольник пустой, в противном случае возвращает false.
Пустой прямоугольник имеет ширину и высоту, равные 0 (т. е., right() == left() - 1 и bottom() == top() - 1). Пустой прямоугольник также пуст и, следовательно, не является допустимым.
См. также isEmpty() и isValid().
bool QRect::isValid() const
Возвращает true если прямоугольник допустим, в противном случае возвращает false.
Допустимый прямоугольник имеет left() <= right() и top() <= bottom(). Обратите внимание, что для нетривиальных операций, таких как пересечения, недопустимые прямоугольники не определены. Допустимый прямоугольник не пуст (т. е., isValid() == !isEmpty()).
См. также isNull(), isEmpty(), и normalized().
int QRect::left() const
Возвращает x-координату левой грани прямоугольника. Эквивалентно x().
См. также setLeft(), topLeft() и bottomLeft().
QRect QRect::marginsAdded(const QMargins &margins) const
Возвращает прямоугольник, увеличенный на margins.
Эта функция была добавлена в Qt 5.1.
См. также operator+=(), marginsRemoved() и operator-=().
QRect QRect::marginsRemoved(const QMargins &margins) const
Удаляет margins из прямоугольника, уменьшая его.
Эта функция была добавлена в Qt 5.1.
См. также marginsAdded(), operator+=() и operator-=().
void QRect::moveBottom(int y)
Перемещает прямоугольник вертикально, оставляя нижнюю границу прямоугольника на заданной координате y. Размер прямоугольника не изменяется.
См. также bottom(), setBottom() и moveTop().
void QRect::moveBottomLeft(const QPoint &position)
Перемещает прямоугольник, оставляя нижний левый угол в заданном position. Размер прямоугольника не изменяется.
См. также setBottomLeft(), moveBottom() и moveLeft().
void QRect::moveBottomRight(const QPoint &position)
Перемещает прямоугольник, оставляя нижний правый угол в заданном position. Размер прямоугольника не изменяется.
См. также setBottomRight(), moveRight() и moveBottom().
void QRect::moveCenter(const QPoint &position)
Перемещает прямоугольник, оставляя центр в заданном position. Размер прямоугольника не изменяется.
См. также center().
void QRect::moveLeft(int x)
Перемещает прямоугольник горизонтально, оставляя левую границу прямоугольника на заданной координате x. Размер прямоугольника не изменяется.
См. также left(), setLeft() и moveRight().
void QRect::moveRight(int x)
Перемещает прямоугольник горизонтально, оставляя правую границу прямоугольника на заданной координате x. Размер прямоугольника не изменяется.
См. также right(), setRight() и moveLeft().
void QRect::moveTo(int x, int y)
Перемещает прямоугольник, оставляя верхний левый угол в заданной позиции (x, y). Размер прямоугольника не изменяется.
См. также translate() и moveTopLeft().
void QRect::moveTo(const QPoint &position)
Перемещает прямоугольник, оставляя верхний левый угол в заданной position.
void QRect::moveTop(int y)
Перемещает прямоугольник вертикально, оставляя верхнюю границу прямоугольника на заданной координате y. Размер прямоугольника не изменяется.
См. также top(), setTop() и moveBottom().
void QRect::moveTopLeft(const QPoint &position)
Перемещает прямоугольник, оставляя верхний левый угол в заданной position. Размер прямоугольника не изменяется.
См. также setTopLeft(), moveTop() и moveLeft().
void QRect::moveTopRight(const QPoint &position)
Перемещает прямоугольник, оставляя верхний правый угол в заданной position. Размер прямоугольника не изменяется.
См. также setTopRight(), moveTop() и moveRight().
QRect QRect::normalized() const
Возвращает нормализованный прямоугольник; т.е., прямоугольник с неотрицательной шириной и высотой.
Если width() < 0 функция меняет местами левую и правую вершины, а если height() < 0, меняет местами верхнюю и нижнюю вершины.
См. также isValid() и isEmpty().
int QRect::right() const
Возвращает координату x правой границы прямоугольника.
Обратите внимание, что по историческим причинам эта функция возвращает left() + width() - 1; используйте x() + width() для получения истинной координаты x.
См. также setRight(), topRight() и bottomRight().
void QRect::setBottom(int y)
Устанавливает нижнюю границу прямоугольника на заданную координату y. Может изменить высоту, но никогда не изменит верхнюю границу прямоугольника.
См. также bottom() и moveBottom().
void QRect::setBottomLeft(const QPoint &position)
Устанавливает нижний левый угол прямоугольника в заданную position. Может изменить размер, но никогда не изменит верхний правый угол прямоугольника.
См. также bottomLeft() и moveBottomLeft().
void QRect::setBottomRight(const QPoint &position)
Устанавливает нижний правый угол прямоугольника в заданную position. Может изменить размер, но никогда не изменит верхний левый угол прямоугольника.
См. также bottomRight() и moveBottomRight().
void QRect::setCoords(int x1, int y1, int x2, int y2)
Устанавливает координаты верхнего левого угла прямоугольника в (x1, y1), а координаты нижнего правого угла в (x2, y2).
См. также getCoords() и setRect().
void QRect::setHeight(int height)
Устанавливает высоту прямоугольника на заданную height. Нижняя граница изменяется, но не верхняя.
См. также height() и setSize().
void QRect::setLeft(int x)
Устанавливает левую границу прямоугольника на заданную координату x. Может изменить ширину, но никогда не изменит правую границу прямоугольника.
Эквивалентно setX().
См. также left() и moveLeft().
void QRect::setRect(int x, int y, int width, int height)
Устанавливает координаты верхнего левого угла прямоугольника в (x, y) и его размер на заданную width и height.
См. также getRect() и setCoords().
void QRect::setRight(int x)
Устанавливает правую границу прямоугольника на заданную координату x. Может изменить ширину, но никогда не изменит левую границу прямоугольника.
См. также right() и moveRight().
void QRect::setSize(const QSize &size)
Устанавливает размер прямоугольника на заданную size. Верхний левый угол не смещается.
См. также size(), setWidth() и setHeight().
void QRect::setTop(int y)
Устанавливает верхнюю границу прямоугольника на заданную координату y. Может изменить высоту, но никогда не изменит нижнюю границу прямоугольника.
Эквивалентно setY().
void QRect::setTopLeft(const QPoint &position)
Устанавливает верхний левый угол прямоугольника в заданную position. Может изменить размер, но никогда не изменит нижний правый угол прямоугольника.
См. также topLeft() и moveTopLeft().
void QRect::setTopRight(const QPoint &position)
Устанавливает верхний правый угол прямоугольника в заданную position. Может изменить размер, но никогда не изменит нижний левый угол прямоугольника.
См. также topRight() и moveTopRight().
void QRect::setWidth(int width)
Устанавливает ширину прямоугольника в заданную width. Правая граница изменяется, но левая — нет.
См. также width() и setSize().
void QRect::setX(int x)
Устанавливает левую границу прямоугольника в заданную координату x. Может изменить ширину, но никогда не изменит правую границу прямоугольника.
Эквивалентно setLeft().
См. также x(), setY() и setTopLeft().
void QRect::setY(int y)
Устанавливает верхнюю границу прямоугольника в заданную координату y. Может изменить высоту, но никогда не изменит нижнюю границу прямоугольника.
Эквивалентно setTop().
См. также y(), setX() и setTopLeft().
QSize QRect::size() const
Возвращает размер прямоугольника.
См. также setSize(), width() и height().
int QRect::top() const
Возвращает координату y верхней границы прямоугольника. Эквивалентно y().
См. также setTop(), topLeft() и topRight().
QPoint QRect::topLeft() const
Возвращает координаты верхнего левого угла прямоугольника.
См. также setTopLeft(), top() и left().
QPoint QRect::topRight() const
Возвращает координаты верхнего правого угла прямоугольника.
Обратите внимание, что по историческим причинам эта функция возвращает QPoint(left() + width() -1, top()).
См. также setTopRight(), top() и right().
void QRect::translate(int dx, int dy)
Перемещает прямоугольник на dx по оси x и dy по оси y, относительно текущего положения. Положительные значения перемещают прямоугольник вправо и вниз.
См. также moveTopLeft(), moveTo() и translated().
void QRect::translate(const QPoint &offset)
Это перегруженная функция.
Перемещает прямоугольник на offset.x() по оси x и offset.y() по оси y, относительно текущего положения.
QRect QRect::translated(int dx, int dy) const
Возвращает копию прямоугольника, перемещенного на dx по оси x и dy по оси y, относительно текущего положения. Положительные значения перемещают прямоугольник вправо и вниз.
См. также translate().
QRect QRect::translated(const QPoint &offset) const
Это перегруженная функция.
Возвращает копию прямоугольника, перемещенного на offset.x() по оси x и offset.y() по оси y, относительно текущего положения.
QRect QRect::united(const QRect &rectangle) const
Возвращает ограничивающий прямоугольник для этого прямоугольника и заданного rectangle.
Эта функция была добавлена в Qt 4.2.
См. также intersected().
int QRect::width() const
Возвращает ширину прямоугольника.
См. также setWidth(), height() и size().
int QRect::x() const
Возвращает координату x левой границы прямоугольника. Эквивалентно left().
См. также setX(), y() и topLeft().
int QRect::y() const
Возвращает координату y верхней границы прямоугольника. Эквивалентно top().
См. также setY(), x() и topLeft().
QRect QRect::operator&(const QRect &rectangle) const
Возвращает пересечение этого прямоугольника и заданного rectangle. Возвращает пустой прямоугольник, если пересечения нет.
См. также operator&=() и intersected().
QRect &QRect::operator&=(const QRect &rectangle)
Пересекает этот прямоугольник с заданным rectangle.
См. также intersected() и operator&().
QRect &QRect::operator+=(const QMargins &margins)
Добавляет margins к прямоугольнику, увеличивая его.
Эта функция была добавлена в Qt 5.1.
См. также marginsAdded(), marginsRemoved() и operator-=().
QRect &QRect::operator-=(const QMargins &margins)
Возвращает прямоугольник, уменьшенный на margins.
Эта функция была добавлена в Qt 5.1.
См. также marginsRemoved(), operator+=() и marginsAdded().
QRect QRect::operator|(const QRect &rectangle) const
Возвращает ограничивающий прямоугольник для этого прямоугольника и заданного rectangle.
См. также operator|=() и united().
QRect &QRect::operator|=(const QRect &rectangle)
Объединяет этот прямоугольник с заданным rectangle.
См. также united() и operator|().
END_OF_DOCUMENT_MARKERСвязанные нечлены
bool operator!=(const QRect &r1, const QRect &r2)
Возвращает true, если прямоугольники r1 и r2 разные, в противном случае возвращает false.
QRect operator+(const QRect &rectangle, const QMargins &margins)
Возвращает прямоугольник rectangle, увеличенный на margins.
Эта функция была добавлена в Qt 5.1.
QRect operator+(const QMargins &margins, const QRect &rectangle)
Это перегруженная функция.
Возвращает прямоугольник rectangle, увеличенный на margins.
Эта функция была добавлена в Qt 5.1.
QRect operator-(const QRect &lhs, const QMargins &rhs)
Возвращает прямоугольник lhs, уменьшенный на отступы rhs.
Эта функция была добавлена в Qt 5.3.
QDataStream &operator<<(QDataStream &stream, const QRect &rectangle)
Записывает заданный прямоугольник rectangle в заданный поток stream и возвращает ссылку на поток.
См. также Сериализация типов данных Qt.
bool operator==(const QRect &r1, const QRect &r2)
Возвращает true, если прямоугольники r1 и r2 равны, в противном случае возвращает false.
QDataStream &operator>>(QDataStream &stream, QRect &rectangle)
Считывает прямоугольник из заданного потока stream в заданный прямоугольник rectangle и возвращает ссылку на поток.
См. также Сериализация типов данных Qt.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qrect.html