QRect Class
La clase QRect define un rectángulo en el plano utilizando precisión entera. Más...
| Cabecera: | #include <QRect> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core)target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
- Lista de todos los miembros, incluyendo los heredados
- QRect es parte de las clases de pintura.
Esta clase es igual-comparable.
Esta clase es comparable con QRectF.
Nota: Todas las funciones de esta clase son reentrantes.
Funciones Públicas
| 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(const QPoint &position) |
| void | moveTo(int x, int y) |
| 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 |
| CGRect | toCGRect() const |
(since 6.4) QRectF | toRectF() 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 | transposed() 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) |
Miembros públicos estáticos
(since 6.0) QRect | span(const QPoint &p1, const QPoint &p2) |
No miembros relacionados
| bool | operator!=(const QRect &lhs, const QRect &rhs) |
| QRect | operator+(const QMargins &margins, const QRect &rectangle) |
| QRect | operator+(const QRect &rectangle, const QMargins &margins) |
| QRect | operator-(const QRect &lhs, const QMargins &rhs) |
| QDataStream & | operator<<(QDataStream &stream, const QRect &rectangle) |
| bool | operator==(const QRect &lhs, const QRect &rhs) |
| QDataStream & | operator>>(QDataStream &stream, QRect &rectangle) |
Descripción Detallada
Un rectángulo se expresa normalmente como una esquina superior izquierda y un tamaño. El tamaño (anchura y altura) de un QRect es siempre equivalente al rectángulo matemático que constituye la base de su representación.
Un QRect puede construirse con un conjunto de enteros de izquierda, arriba, anchura y altura, o a partir de un QPoint y un QSize. El código siguiente crea dos rectángulos idénticos.
Existe un tercer constructor que crea un QRect utilizando las coordenadas superior izquierda e inferior derecha, pero te recomendamos que evites utilizarlo. La razón es que por razones históricas los valores devueltos por las funciones bottom() y right() se desvían de la verdadera esquina inferior derecha del rectángulo.
La clase QRect proporciona una colección de funciones que devuelven las distintas coordenadas del rectángulo y permiten manipularlas. QRect también proporciona funciones para mover el rectángulo en relación a las distintas coordenadas. Además, existe una función moveTo() que mueve el rectángulo, dejando su esquina superior izquierda en las coordenadas dadas. Alternativamente, la función translate() mueve el rectángulo el desplazamiento dado en relación a la posición actual, y la función translated() devuelve una copia traducida de este rectángulo.
La función size() devuelve las dimensiones del rectángulo como QSize. Las dimensiones también pueden recuperarse por separado utilizando las funciones width() y height(). Para manipular las dimensiones utilice las funciones setSize(), setWidth() o setHeight(). También se puede modificar el tamaño aplicando cualquiera de las funciones que establecen las coordenadas del rectángulo, por ejemplo, setBottom() o setRight().
La función contains() indica si un punto dado está dentro del rectángulo o no, y la función intersects() devuelve true si este rectángulo interseca con un rectángulo dado. La clase QRect también proporciona la función intersected() que devuelve el rectángulo de intersección, y la función united() que devuelve el rectángulo que encierra el rectángulo dado y esto:
La función isEmpty() devuelve true si left() > right() o top() > bottom(). Tenga en cuenta que un rectángulo vacío no es válido: La función isValid() devuelve true si left() <= right() y top() <= bottom(). Por otro lado, un rectángulo nulo (isNull() == true) tiene tanto la anchura como la altura establecidas en 0.
Tenga en cuenta que, debido a la forma en que se definen QRect y QRectF, un QRect vacío se define esencialmente de la misma manera que QRectF.
Por último, los objetos QRect se pueden transmitir y comparar.
Renderizado de
Cuando se utiliza un pintor anti-aliased, la línea de contorno de un QRect se renderiza simétricamente a ambos lados de la línea de contorno del rectángulo matemático. Pero cuando se utiliza un pintor de alias (el predeterminado) se aplican otras reglas.
Entonces, cuando se renderiza con un lápiz de un píxel de ancho, la línea límite del QRect se renderizará a la derecha y por debajo de la línea límite del rectángulo matemático.
Cuando se renderiza con un lápiz de dos píxeles de ancho, la línea límite será dividida por la mitad por el rectángulo matemático. Este será el caso siempre que el lápiz tenga un número par de píxeles, mientras que al renderizar con un lápiz con un número impar de píxeles, el píxel sobrante se renderizará a la derecha y debajo del rectángulo matemático como en el caso de un píxel.
![]() | ![]() |
| Representación lógica | Lápiz de un píxel de ancho |
![]() | ![]() |
| Lápiz de dos píxeles de ancho | Lápiz de tres píxeles de ancho |
Coordenadas
La clase QRect proporciona una colección de funciones que devuelven las distintas coordenadas del rectángulo y permiten manipularlas. QRect también proporciona funciones para mover el rectángulo en relación a las distintas coordenadas.
Por ejemplo, las funciones left(), setLeft() y moveLeft(): left() devuelve la coordenada x del borde izquierdo del rectángulo, setLeft() establece el borde izquierdo del rectángulo en la coordenada x dada (puede cambiar la anchura, pero nunca cambiará el borde derecho del rectángulo) y moveLeft() mueve todo el rectángulo horizontalmente, dejando el borde izquierdo del rectángulo en la coordenada x dada y su tamaño sin cambios.

Tenga en cuenta que, por razones históricas, los valores devueltos por las funciones bottom() y right() se desvían de la verdadera esquina inferior derecha del rectángulo: La función right() devuelve left( ) + width() - 1 y la función bottom() devuelve top( ) + height() - 1. Lo mismo ocurre con el punto devuelto por la función de conveniencia bottomRight(). Además, las coordenadas x e y de las funciones topRight() y bottomLeft(), respectivamente, contienen la misma desviación respecto a los bordes derecho e inferior verdaderos.
Le recomendamos que utilice x() + width() y y() + height() para encontrar la verdadera esquina inferior derecha, y que evite right() y bottom(). Otra solución es utilizar QRectF: La clase QRectF define un rectángulo en el plano utilizando precisión de coma flotante para las coordenadas, y las funciones QRectF::right() y QRectF::bottom() sí devuelven las coordenadas derecha e inferior.
También es posible añadir desplazamientos a las coordenadas de este rectángulo utilizando la función adjust(), así como recuperar un nuevo rectángulo basado en ajustes del original utilizando la función adjusted(). Si la anchura y la altura son negativas, utilice la función normalized() para obtener un rectángulo con las esquinas intercambiadas.
Además, QRect proporciona la función getCoords(), que extrae la posición de la esquina superior izquierda e inferior derecha del rectángulo, y la función getRect(), que extrae la esquina superior izquierda, la anchura y la altura del rectángulo. Utilice las funciones setCoords() y setRect() para manipular las coordenadas y dimensiones del rectángulo de una sola vez.
Restricciones
QRect está limitado a los valores mínimo y máximo para el tipo int. Las operaciones sobre un QRect que potencialmente puedan resultar en valores fuera de este rango resultarán en un comportamiento indefinido.
Véase también QRectF y QRegion.
Documentación de las funciones miembro
[constexpr noexcept] QRect::QRect()
Construye un rectángulo nulo.
Véase también isNull().
[constexpr noexcept] QRect::QRect(const QPoint &topLeft, const QPoint &bottomRight)
Construye un rectángulo con las esquinas dadas topLeft y bottomRight, ambas incluidas.
Si bottomRight está por encima y a la izquierda de topLeft, el rectángulo definido no incluye las esquinas.
Nota: Para asegurarse de que se incluyen ambos puntos independientemente del orden relativo, utilice span().
Véase también setTopLeft(), setBottomRight() y span().
[constexpr noexcept] QRect::QRect(const QPoint &topLeft, const QSize &size)
Construye un rectángulo con la esquina topLeft dada y la size dada.
Véase también setTopLeft() y setSize().
[constexpr noexcept] QRect::QRect(int x, int y, int width, int height)
Construye un rectángulo con (x, y) como esquina superior izquierda y los width y height dados.
Véase también setRect().
[constexpr noexcept] void QRect::adjust(int dx1, int dy1, int dx2, int dy2)
Añade dx1, dy1, dx2 y dy2 respectivamente a las coordenadas existentes del rectángulo.
Véase también adjusted() y setRect().
[constexpr noexcept] QRect QRect::adjusted(int dx1, int dy1, int dx2, int dy2) const
Devuelve un nuevo rectángulo con dx1, dy1, dx2 y dy2 añadidos respectivamente a las coordenadas existentes de este rectángulo.
Véase también adjust().
[constexpr noexcept] int QRect::bottom() const
Devuelve la coordenada y del borde inferior del rectángulo.
Tenga en cuenta que, por razones históricas, esta función devuelve top() + height() - 1; utilice y() + height() para obtener la coordenada y verdadera.
Véase también setBottom(), bottomLeft() y bottomRight().
[constexpr noexcept] QPoint QRect::bottomLeft() const
Devuelve la posición de la esquina inferior izquierda del rectángulo. Tenga en cuenta que, por razones históricas, esta función devuelve QPoint(left(), top() + height() - 1).
Véase también setBottomLeft(), bottom() y left().
[constexpr noexcept] QPoint QRect::bottomRight() const
Devuelve la posición de la esquina inferior derecha del rectángulo.
Tenga en cuenta que, por razones históricas, esta función devuelve QPoint(left() + width() -1, top() + height() - 1).
Véase también setBottomRight(), bottom() y right().
[constexpr noexcept] QPoint QRect::center() const
Devuelve el punto central del rectángulo.
Véase también moveCenter().
[noexcept] bool QRect::contains(const QPoint &point, bool proper = false) const
Devuelve true si point está dentro o en el borde del rectángulo, en caso contrario devuelve false. Si proper es verdadero, esta función sólo devuelve true si point está dentro del rectángulo (es decir, no en el borde).
Véase también intersects().
[noexcept] bool QRect::contains(const QRect &rectangle, bool proper = false) const
Devuelve true si el rectangle dado está dentro de este rectángulo. en caso contrario devuelve false. Si proper es verdadero, esta función sólo devuelve true si rectangle está completamente dentro de este rectángulo (no en el borde).
Esta función está sobrecargada.
[noexcept] bool QRect::contains(int x, int y) const
Devuelve true si el punto (x, y) está dentro de este rectángulo, en caso contrario devuelve false.
Se trata de una función sobrecargada.
[noexcept] bool QRect::contains(int x, int y, bool proper) const
Devuelve true si el punto (x, y) está dentro o en el borde del rectángulo, en caso contrario devuelve false. Si proper es verdadero, esta función sólo devuelve true si el punto está completamente dentro del rectángulo (no en el borde).
Se trata de una función sobrecargada.
[constexpr] void QRect::getCoords(int *x1, int *y1, int *x2, int *y2) const
Extrae la posición de la esquina superior izquierda del rectángulo a *x1 y *y1, y la posición de la esquina inferior derecha a *x2 y *y2.
Véase también setCoords() y getRect().
[constexpr] void QRect::getRect(int *x, int *y, int *width, int *height) const
Extrae la posición de la esquina superior izquierda del rectángulo a *x y *y, y sus dimensiones a *width y *height.
Véase también setRect() y getCoords().
[constexpr noexcept] int QRect::height() const
Devuelve la altura del rectángulo.
Véase también setHeight(), width() y size().
[noexcept] QRect QRect::intersected(const QRect &rectangle) const
Devuelve la intersección de este rectángulo y el dado rectangle. Observe que r.intersected(s) es equivalente a r & s.

Véase también intersects(), united() y operator&=().
[noexcept] bool QRect::intersects(const QRect &rectangle) const
Devuelve true si este rectángulo interseca con el dado rectangle (es decir, hay al menos un píxel que está dentro de ambos rectángulos), en caso contrario devuelve false.
El rectángulo de intersección puede recuperarse utilizando la función intersected().
Véase también contains().
[constexpr noexcept] bool QRect::isEmpty() const
Devuelve true si el rectángulo está vacío, en caso contrario devuelve false.
Un rectángulo vacío tiene un left() > right() o top() > bottom(). Un rectángulo vacío no es válido (es decir, isEmpty() == !isValid()).
Utilice la función normalized() para obtener un rectángulo con las esquinas intercambiadas.
Véase también isNull(), isValid() y normalized().
[constexpr noexcept] bool QRect::isNull() const
Devuelve true si el rectángulo es nulo, en caso contrario devuelve false.
Un rectángulo nulo tiene tanto la anchura como la altura establecidas en 0 (es decir, right() == left() - 1 y bottom() == top() - 1). Un rectángulo nulo también está vacío y, por tanto, no es válido.
Véase también isEmpty() y isValid().
[constexpr noexcept] bool QRect::isValid() const
Devuelve true si el rectángulo es válido, en caso contrario devuelve false.
Un rectángulo válido tiene left() <= right() y top() <= bottom(). Tenga en cuenta que las operaciones no triviales, como las intersecciones, no están definidas para los rectángulos no válidos. Un rectángulo válido no está vacío (es decir, isValid() == !isEmpty()).
Véase también isNull(), isEmpty() y normalized().
[constexpr noexcept] int QRect::left() const
Devuelve la coordenada x del borde izquierdo del rectángulo. Equivale a x().
Véase también setLeft(), topLeft() y bottomLeft().
[constexpr noexcept] QRect QRect::marginsAdded(const QMargins &margins) const
Devuelve un rectángulo crecido por el margins.
Véase también operator+=(), marginsRemoved() y operator-=().
[constexpr noexcept] QRect QRect::marginsRemoved(const QMargins &margins) const
Elimina el margins del rectángulo, encogiéndolo.
Véase también marginsAdded(), operator+=() y operator-=().
[constexpr noexcept] void QRect::moveBottom(int y)
Mueve el rectángulo verticalmente, dejando el borde inferior del rectángulo en la coordenada y dada. El tamaño del rectángulo no cambia.
Véase también bottom(), setBottom() y moveTop().
[constexpr noexcept] void QRect::moveBottomLeft(const QPoint &position)
Mueve el rectángulo, dejando la esquina inferior izquierda en la dirección position. El tamaño del rectángulo no cambia.
Véase también setBottomLeft(), moveBottom() y moveLeft().
[constexpr noexcept] void QRect::moveBottomRight(const QPoint &position)
Mueve el rectángulo, dejando la esquina inferior derecha en la dirección position. El tamaño del rectángulo no cambia.
Véase también setBottomRight(), moveRight() y moveBottom().
[constexpr noexcept] void QRect::moveCenter(const QPoint &position)
Mueve el rectángulo, dejando el punto central en la dirección position. El tamaño del rectángulo no cambia.
Véase también center().
[constexpr noexcept] void QRect::moveLeft(int x)
Mueve el rectángulo horizontalmente, dejando el borde izquierdo del rectángulo en la coordenada x dada. El tamaño del rectángulo no cambia.
Véase también left(), setLeft() y moveRight().
[constexpr noexcept] void QRect::moveRight(int x)
Mueve el rectángulo horizontalmente, dejando el borde derecho del rectángulo en la coordenada x dada. El tamaño del rectángulo no cambia.
Véase también right(), setRight() y moveLeft().
[constexpr noexcept] void QRect::moveTo(const QPoint &position)
Mueve el rectángulo, dejando la esquina superior izquierda en la dirección position.
[constexpr noexcept] void QRect::moveTo(int x, int y)
Mueve el rectángulo, dejando la esquina superior izquierda en la posición dada (x, y). El tamaño del rectángulo no cambia.
Véase también translate() y moveTopLeft().
[constexpr noexcept] void QRect::moveTop(int y)
Mueve el rectángulo verticalmente, dejando el borde superior del rectángulo en la coordenada y dada. El tamaño del rectángulo no cambia.
Véase también top(), setTop() y moveBottom().
[constexpr noexcept] void QRect::moveTopLeft(const QPoint &position)
Mueve el rectángulo, dejando la esquina superior izquierda en la dirección position. El tamaño del rectángulo no cambia.
Véase también setTopLeft(), moveTop() y moveLeft().
[constexpr noexcept] void QRect::moveTopRight(const QPoint &position)
Mueve el rectángulo, dejando la esquina superior derecha en la dirección position. El tamaño del rectángulo no cambia.
Véase también setTopRight(), moveTop() y moveRight().
[noexcept] QRect QRect::normalized() const
Devuelve un rectángulo normalizado; es decir, un rectángulo que tiene una anchura y una altura no negativas.
Si width() < 0 la función intercambia las esquinas izquierda y derecha, e intercambia las esquinas superior e inferior si height() < 0. Las esquinas son al mismo tiempo cambiadas de no inclusivas a inclusivas.
Véase también isValid() y isEmpty().
[constexpr noexcept] int QRect::right() const
Devuelve la coordenada x del borde derecho del rectángulo.
Tenga en cuenta que, por razones históricas, esta función devuelve left() + width() - 1; utilice x() + width() para obtener la verdadera coordenada x.
Véase también setRight(), topRight() y bottomRight().
[constexpr noexcept] void QRect::setBottom(int y)
Establece el borde inferior del rectángulo en la coordenada y dada. Puede cambiar la altura, pero nunca cambiará el borde superior del rectángulo.
Véase también bottom() y moveBottom().
[constexpr noexcept] void QRect::setBottomLeft(const QPoint &position)
Establece la esquina inferior izquierda del rectángulo en la dirección position. Puede cambiar el tamaño, pero nunca cambiará la esquina superior derecha del rectángulo.
Véase también bottomLeft() y moveBottomLeft().
[constexpr noexcept] void QRect::setBottomRight(const QPoint &position)
Establece la esquina inferior derecha del rectángulo en la dirección position. Puede cambiar el tamaño, pero nunca cambiará la esquina superior izquierda del rectángulo.
Véase también bottomRight() y moveBottomRight().
[constexpr noexcept] void QRect::setCoords(int x1, int y1, int x2, int y2)
Establece las coordenadas de la esquina superior izquierda del rectángulo en (x1, y1), y las coordenadas de su esquina inferior derecha en (x2, y2).
Véase también getCoords() y setRect().
[constexpr noexcept] void QRect::setHeight(int height)
Establece la altura del rectángulo al valor dado height. Se cambia el borde inferior, pero no el superior.
Véase también height() y setSize().
[constexpr noexcept] void QRect::setLeft(int x)
Establece el borde izquierdo del rectángulo en la coordenada x dada. Puede cambiar el ancho, pero nunca cambiará el borde derecho del rectángulo.
Equivale a setX().
Véase también left() y moveLeft().
[constexpr noexcept] void QRect::setRect(int x, int y, int width, int height)
Establece las coordenadas de la esquina superior izquierda del rectángulo en (x, y), y su tamaño en los valores width y height.
Véase también getRect() y setCoords().
[constexpr noexcept] void QRect::setRight(int x)
Establece el borde derecho del rectángulo en la coordenada x dada. Puede cambiar el ancho, pero nunca cambiará el borde izquierdo del rectángulo.
Véase también right() y moveRight().
[constexpr noexcept] void QRect::setSize(const QSize &size)
Establece el tamaño del rectángulo en la dirección size. La esquina superior izquierda no se mueve.
Véase también size(), setWidth() y setHeight().
[constexpr noexcept] void QRect::setTop(int y)
Establece el borde superior del rectángulo en la coordenada y dada. Puede cambiar la altura, pero nunca cambiará el borde inferior del rectángulo.
Equivale a setY().
Véase también top() y moveTop().
[constexpr noexcept] void QRect::setTopLeft(const QPoint &position)
Establece la esquina superior izquierda del rectángulo en la dirección position. Puede cambiar el tamaño, pero nunca cambiará la esquina inferior derecha del rectángulo.
Véase también topLeft() y moveTopLeft().
[constexpr noexcept] void QRect::setTopRight(const QPoint &position)
Establece la esquina superior derecha del rectángulo en la dirección position. Puede cambiar el tamaño, pero nunca cambiará la esquina inferior izquierda del rectángulo.
Véase también topRight() y moveTopRight().
[constexpr noexcept] void QRect::setWidth(int width)
Establece la anchura del rectángulo en el valor dado width. Se cambia el borde derecho, pero no el izquierdo.
Véase también width() y setSize().
[constexpr noexcept] void QRect::setX(int x)
Establece el borde izquierdo del rectángulo en la coordenada x dada. Puede cambiar el ancho, pero nunca cambiará el borde derecho del rectángulo.
Equivale a setLeft().
Véase también x(), setY() y setTopLeft().
[constexpr noexcept] void QRect::setY(int y)
Establece el borde superior del rectángulo en la coordenada y dada. Puede cambiar la altura, pero nunca cambiará el borde inferior del rectángulo.
Equivale a setTop().
Véase también y(), setX() y setTopLeft().
[constexpr noexcept] QSize QRect::size() const
Devuelve el tamaño del rectángulo.
Véase también setSize(), width() y height().
[static constexpr noexcept, since 6.0] QRect QRect::span(const QPoint &p1, const QPoint &p2)
Devuelve un rectángulo que abarca los dos puntos p1 y p2, incluyendo ambos y todo lo que hay entre ellos.
Esta función se introdujo en Qt 6.0.
[noexcept] CGRect QRect::toCGRect() const
Crea un CGRect a partir de QRect.
Véase también QRectF::fromCGRect().
[constexpr noexcept, since 6.4] QRectF QRect::toRectF() const
Devuelve este rectángulo como un rectángulo con precisión de coma flotante.
Nota: Esta función, al igual que el constructor QRectF(QRect), preserva la size() del rectángulo, no su bottomRight() esquina.
Esta función se introdujo en Qt 6.4.
Véase también QRectF::toRect().
[constexpr noexcept] int QRect::top() const
Devuelve la coordenada y del borde superior del rectángulo. Equivale a y().
Véase también setTop(), topLeft() y topRight().
[constexpr noexcept] QPoint QRect::topLeft() const
Devuelve la posición de la esquina superior izquierda del rectángulo.
Véase también setTopLeft(), top() y left().
[constexpr noexcept] QPoint QRect::topRight() const
Devuelve la posición de la esquina superior derecha del rectángulo.
Tenga en cuenta que, por razones históricas, esta función devuelve QPoint(left() + width() -1, top()).
Véase también setTopRight(), top() y right().
[constexpr noexcept] void QRect::translate(int dx, int dy)
Mueve el rectángulo dx a lo largo del eje x y dy a lo largo del eje y, en relación con la posición actual. Los valores positivos desplazan el rectángulo hacia la derecha y hacia abajo.
Véase también moveTopLeft(), moveTo() y translated().
[constexpr noexcept] void QRect::translate(const QPoint &offset)
Mueve el rectángulo offset.x() a lo largo del eje x y offset.y() a lo largo del eje y, en relación con la posición actual.
Se trata de una función sobrecargada.
[constexpr noexcept] QRect QRect::translated(int dx, int dy) const
Devuelve una copia del rectángulo que se traslada dx a lo largo del eje x y dy a lo largo del eje y, en relación con la posición actual. Los valores positivos desplazan el rectángulo hacia la derecha y hacia abajo.
Véase también translate().
[constexpr noexcept] QRect QRect::translated(const QPoint &offset) const
Devuelve una copia del rectángulo trasladado offset.x() a lo largo del eje x y offset.y() a lo largo del eje y, en relación con la posición actual.
Se trata de una función sobrecargada.
[constexpr noexcept] QRect QRect::transposed() const
Devuelve una copia del rectángulo con su anchura y altura intercambiadas:
QRect r = {15, 51, 42, 24}; r = r.transposed(); // r == {15, 51, 24, 42}
Véase también QSize::transposed().
[noexcept] QRect QRect::united(const QRect &rectangle) const
Devuelve el rectángulo que delimita este rectángulo y la dirección rectangle.

Véase también intersected().
[constexpr noexcept] int QRect::width() const
Devuelve la anchura del rectángulo.
Véase también setWidth(), height() y size().
[constexpr noexcept] int QRect::x() const
Devuelve la coordenada x del borde izquierdo del rectángulo. Equivale a left().
Véase también setX(), y() y topLeft().
[constexpr noexcept] int QRect::y() const
Devuelve la coordenada y del borde superior del rectángulo. Equivale a top().
Véase también setY(), x() y topLeft().
[noexcept] QRect QRect::operator&(const QRect &rectangle) const
Devuelve la intersección de este rectángulo con la dirección rectangle. Devuelve un rectángulo vacío si no hay intersección.
Véase también operator&=() y intersected().
[noexcept] QRect &QRect::operator&=(const QRect &rectangle)
Interseca este rectángulo con el dado rectangle.
Véase también intersected() y operator&().
[constexpr noexcept] QRect &QRect::operator+=(const QMargins &margins)
Añade el margins al rectángulo, haciéndolo crecer.
Véase también marginsAdded(), marginsRemoved() y operator-=().
[constexpr noexcept] QRect &QRect::operator-=(const QMargins &margins)
Devuelve un rectángulo encogido por margins.
Véase también marginsRemoved(), operator+=() y marginsAdded().
[noexcept] QRect QRect::operator|(const QRect &rectangle) const
Devuelve el rectángulo que delimita este rectángulo y la dirección rectangle.
Véase también operator|=() y united().
[noexcept] QRect &QRect::operator|=(const QRect &rectangle)
Une este rectángulo con el dado rectangle.
No miembros relacionados
[constexpr noexcept] bool operator!=(const QRect &lhs, const QRect &rhs)
Devuelve true si los rectángulos lhs y rhs son diferentes, en caso contrario devuelve false.
[constexpr noexcept] QRect operator+(const QMargins &margins, const QRect &rectangle)
Devuelve el rectangle cultivado por el margins.
Se trata de una función sobrecargada.
[constexpr noexcept] QRect operator+(const QRect &rectangle, const QMargins &margins)
Devuelve los rectangle cultivados por el margins.
[constexpr noexcept] QRect operator-(const QRect &lhs, const QMargins &rhs)
Devuelve el rectángulo lhs encogido por los márgenes rhs.
QDataStream &operator<<(QDataStream &stream, const QRect &rectangle)
Escribe el rectangle dado en el stream dado, y devuelve una referencia al flujo.
Véase también Serializar tipos de datos Qt.
[constexpr noexcept] bool operator==(const QRect &lhs, const QRect &rhs)
Devuelve true si los rectángulos lhs y rhs son iguales, en caso contrario devuelve false.
QDataStream &operator>>(QDataStream &stream, QRect &rectangle)
Lee un rectángulo del stream dado al rectangle dado , y devuelve una referencia al flujo.
Véase también Serializar tipos de datos 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.



