QRect 类

QRect 类使用整数精度在平面内定义一个矩形。 更多信息...

头文件 #include <QRect>
CMakefind_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmakeQT += 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)
voidadjust(int dx1, int dy1, int dx2, int dy2)
QRectadjusted(int dx1, int dy1, int dx2, int dy2) const
intbottom() const
QPointbottomLeft() const
QPointbottomRight() const
QPointcenter() const
boolcontains(const QPoint &point, bool proper = false) const
boolcontains(const QRect &rectangle, bool proper = false) const
boolcontains(int x, int y) const
boolcontains(int x, int y, bool proper) const
voidgetCoords(int *x1, int *y1, int *x2, int *y2) const
voidgetRect(int *x, int *y, int *width, int *height) const
intheight() const
QRectintersected(const QRect &rectangle) const
boolintersects(const QRect &rectangle) const
boolisEmpty() const
boolisNull() const
boolisValid() const
intleft() const
QRectmarginsAdded(const QMargins &margins) const
QRectmarginsRemoved(const QMargins &margins) const
voidmoveBottom(int y)
voidmoveBottomLeft(const QPoint &position)
voidmoveBottomRight(const QPoint &position)
voidmoveCenter(const QPoint &position)
voidmoveLeft(int x)
voidmoveRight(int x)
voidmoveTo(int x, int y)
voidmoveTo(const QPoint &position)
voidmoveTop(int y)
voidmoveTopLeft(const QPoint &position)
voidmoveTopRight(const QPoint &position)
QRectnormalized() const
intright() const
voidsetBottom(int y)
voidsetBottomLeft(const QPoint &position)
voidsetBottomRight(const QPoint &position)
voidsetCoords(int x1, int y1, int x2, int y2)
voidsetHeight(int height)
voidsetLeft(int x)
voidsetRect(int x, int y, int width, int height)
voidsetRight(int x)
voidsetSize(const QSize &size)
voidsetTop(int y)
voidsetTopLeft(const QPoint &position)
voidsetTopRight(const QPoint &position)
voidsetWidth(int width)
voidsetX(int x)
voidsetY(int y)
QSizesize() const
CGRecttoCGRect() const
(since 6.4) QRectFtoRectF() const
inttop() const
QPointtopLeft() const
QPointtopRight() const
voidtranslate(int dx, int dy)
voidtranslate(const QPoint &offset)
QRecttranslated(int dx, int dy) const
QRecttranslated(const QPoint &offset) const
QRecttransposed() const
QRectunited(const QRect &rectangle) const
intwidth() const
intx() const
inty() const
QRectoperator&(const QRect &rectangle) const
QRect &operator&=(const QRect &rectangle)
QRect &operator+=(const QMargins &margins)
QRect &operator-=(const QMargins &margins)
QRectoperator|(const QRect &rectangle) const
QRect &operator|=(const QRect &rectangle)

静态公共成员

(since 6.0) QRectspan(const QPoint &p1, const QPoint &p2)
booloperator!=(const QRect &r1, const QRect &r2)
QRectoperator+(const QRect &rectangle, const QMargins &margins)
QRectoperator+(const QMargins &margins, const QRect &rectangle)
QRectoperator-(const QRect &lhs, const QMargins &rhs)
QDataStream &operator<<(QDataStream &, const QRect &矩形)
booloperator==(const QRect &r1, const QRect &r2)
QDataStream &operator>>(QDataStream &, QRect &矩形)

详细描述

一个矩形通常用其左上角和大小来表示。QRect的大小(宽度和高度)始终等同于构成其渲染基础的数学矩形。

可以使用一组左、上、宽和高的整数,或从QPointQSize构造一个QRect。下面的代码创建了两个相同的矩形。

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()函数,返回包含给定矩形和此矩形交集的矩形

isEmpty()函数如果left() > right()或top() > bottom()则返回true。注意,空矩形是无效的:isValid()函数如果left() <= right() and top() <= bottom()则返回true。另一方面,空矩形(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()返回的点也是如此。此外,topRight()和bottomLeft()函数分别具有相同的偏差,即与真实右边缘和底部边缘的偏差相同。

我们建议您使用x() + width()和y() + height()来找到真实的底部右角,并避免使用right()和bottom()。另一个解决方案是使用QRectF:类QRectF使用浮点精度定义平面上的矩形,函数QRectF::right()和QRectF::bottom()确实返回右和底坐标。

您还可以使用adjust()函数将偏移添加到此矩形的坐标中,以及使用adjusted()函数根据原始矩形进行调整以检索新的矩形。如果宽度和高度之一为负,请使用normalized()函数来检索角的侧逆矩形。

此外,QRect提供了getCoords()函数,该函数提取矩形左上角和右下角的位置,以及getRect()函数,该函数提取矩形的左上角、宽度和高度。使用setCoords()和setRect()函数一次性操作矩形的坐标和尺寸。

限制条件

QRect对类型的最大和最小值有限制。对QRect的操作,如果可能得到超出此范围之外的值,将导致未定义行为。

另请参阅QRectFQRegion

成员函数文档

[constexpr noexcept] QRect::QRect()

构造一个空矩形。

另请参阅isNull

[constexpr noexcept] QRect::QRect(const QPoint &topLeft, const QPoint &bottomRight)

构造一个具有给定topLeftbottomRight角(均包含)的矩形。

如果bottomRighttopLeft的右侧且上方,则定义的矩形不包含这两个角。

注意:为确保无论顺序如何都包含两个点,请使用span

另请参阅setTopLeft()、setBottomRight()和span

[constexpr noexcept] QRect::QRect(const QPoint &topLeft, const QSize &size)

构造一个具有给定topLeft角和给定size的矩形。

另请参阅setTopLeft()和setSize

[constexpr noexcept] QRect::QRect(int x, int y, int width, int height)

构造一个矩形,其左上角为(i, y),宽度为width和高度为height

另请参阅setRect

[constexpr noexcept] void QRect::adjust(int dx1, int dy1, int dx2, int dy2)

dx1dy1dx2dy2分别加到矩形的现有坐标上。

另请参阅adjusted()和setRect

[constexpr noexcept] QRect QRect::adjusted(int dx1, int dy1, int dx2, int dy2) const

返回一个新的矩形,其在现有坐标的每个方向上分别加上dx1dy1dx2dy2

另请参阅adjust

[constexpr noexcept] int QRect::bottom() const

返回矩形底部边缘的y坐标。

请注意,由于历史原因,此函数返回top() + height() - 1;请使用y() + height来获取实际的y坐标。

另请参阅 setBottom()、bottomLeft()和bottomRight()。

[constexpr noexcept] QPoint QRect::bottomLeft() const

返回矩形左下角的位置。请注意,由于历史原因,此函数返回QPoint(left(), top() + height() - 1)。

另请参阅 setBottomLeft()、bottom()和left()。

[constexpr noexcept] QPoint QRect::bottomRight() const

返回矩形右下角的位置。

请注意,由于历史原因,此函数返回QPoint(left() + width() -1, top() + height - 1)。

另请参阅 setBottomRight()、bottom()和right()。

[constexpr noexcept] QPoint QRect::center() const

返回矩形的中心点。

另请参阅 moveCenter()。

[noexcept] bool QRect::contains(const QPoint &point, bool proper = false) const

如果指定的点point位于矩形内部或其边缘上,则返回true,否则返回false。如果proper为真,则此函数仅在指定的点point位于矩形内部(即不在边缘上)时返回true

另请参阅 intersects()。

[noexcept] bool QRect::contains(const QRect &rectangle, bool proper = false) const

这是一个重载的函数。

如果指定的矩形rectangle位于此矩形内部,则返回true;否则返回false。如果proper为真,则此函数仅在指定的矩形rectangle完全位于此矩形内部(不在边缘上)时返回true

[noexcept] bool QRect::contains(int x, int y) const

这是一个重载的函数。

如果点(xy)在此矩形内,则返回 true,否则返回 false

[noexcept] bool QRect::contains(int xint ybool proper ) const

这是一个重载的函数。

如果点(xy)在此矩形内或边界上,则返回 true,否则返回 false。如果 proper 为 true,则此函数仅当点完全位于矩形内(不在边界上时)才返回 true

[constexpr] void QRect::getCoords(int *x1int *y1int *x2int *y2 ) const

提取矩形左上角的位置到 *x1 和 *y1,并将右下角的位置提取到 *x2 和 *y2

另请参阅 setCoords() 和 getRect

[constexpr] void QRect::getRect(int *xint *yint *widthint *height ) const

提取矩形左上角的位置到 *x 和 *y,并将矩形的尺寸提取到 *width 和 *height

另请参阅 setRect() 和 getCoords

[constexpr noexcept] int QRect::height() const

返回矩形的宽度。

另请参阅 setHeight()、width() 和 size

[noexcept] QRect QRect::intersected(const QRect &rectangle) const

返回此矩形与给定矩形 rectangle 的交集。注意,r.intersected(s) 等同于 r & s

另请参阅 intersects()、united() 和 operator&=

[noexcept] bool QRect::intersects(const QRect &rectangle) const

如果此矩形与给定矩形 rectangle 相交(即,两个矩形中至少有一个像素位于两个矩形中),则返回 true,否则返回 false

可以使用 intersected() 函数检索交集矩形。

另请参阅 contains

[constexpr noexcept] bool QRect::isEmpty() const

如果矩形为空,则返回 true,否则返回 false

一个空矩形有左() > 右() 或 上() > 下(). 空矩形是无效的(即,isEmpty() == !isValid()())。

使用normalized()函数检索一个角落对换的矩形。

另请参阅isNull(),isValid() 和 normalized()。

[constexpr noexcept] bool QRect::isNull() const

如果矩形是一个空矩形,则返回true,否则返回false。

空矩形将宽度和高度都设置为0(即,right() == left() - 1 和 bottom() == top() - 1)。空矩形也是空的,因此不是有效矩形。

另请参阅isEmpty() 和 isValid()。

[constexpr noexcept] bool QRect::isValid() const

如果矩形有效,则返回true,否则返回false。

有效矩形的左() <= 右() 和 上() <= 下(). 注意,对于无效矩形,未定义非平凡操作,如交集。有效矩形不是空的(即,isValid() == !isEmpty()())。

另请参阅isNull(),isEmpty() 和 normalized()。

[constexpr noexcept] int QRect::left() const

返回矩形的左侧x坐标。等效于x()。

另请参阅setLeft(),topLeft() 和 bottomLeft()。

[constexpr noexcept] QRect QRect::marginsAdded(const QMargins &margins) const

返回通过增加margins的矩形。

另请参阅operator+=(),marginsRemoved() 和 operator-=()。

[constexpr noexcept] QRect QRect::marginsRemoved(const QMargins &margins) const

从矩形中减去margins,缩小矩形。

另请参阅marginsAdded(),operator+=() 和 operator-=()。

[constexpr noexcept] void QRect::moveBottom(int y)

沿垂直方向移动矩形,将矩形的底部边缘保持在给定的y坐标处。矩形的大小保持不变。

另请参阅 bottom(),setBottom() 和 moveTop()。

[constexpr noexcept] void QRect::moveBottomLeft(const QPoint &position)

移动矩形,使矩形的左下角位于给定的 position。矩形的尺寸保持不变。

另请参阅 setBottomLeft(),moveBottom() 和 moveLeft()。

[constexpr noexcept] void QRect::moveBottomRight(const QPoint &position)

移动矩形,使矩形的右下角位于给定的 position。矩形的尺寸保持不变。

另请参阅 setBottomRight(),moveRight() 和 moveBottom()。

[constexpr noexcept] void QRect::moveCenter(const QPoint &position)

移动矩形,使矩形的中心点位于给定的 position。矩形的尺寸保持不变。

另请参阅 center()。

[constexpr noexcept] void QRect::moveLeft(int x)

水平移动矩形,使矩形的左边缘位于给定的 x 坐标。矩形的尺寸保持不变。

另请参阅 left(),setLeft() 和 moveRight()。

[constexpr noexcept] void QRect::moveRight(int x)

水平移动矩形,使矩形的右边缘位于给定的 x 坐标。矩形的尺寸保持不变。

另请参阅 right(),setRight() 和 moveLeft()。

[constexpr noexcept] void QRect::moveTo(int x, int y)

移动矩形,使矩形的左上角位于给定的位置 (x, y)。矩形的尺寸保持不变。

另请参阅 translate() 和 moveTopLeft()。

[constexpr noexcept] void QRect::moveTo(const QPoint &position)

移动矩形,使矩形的左上角位于给定的 position

[constexpr noexcept] void QRect::moveTop(int y)

垂直移动矩形,使矩形的顶部边缘位于给定的 y 坐标。矩形的尺寸保持不变。

另请参阅 top(),setTop() 和 moveBottom()。

[constexpr noexcept] void QRect::moveTopLeft(const QPoint &position)

移动矩形,使左上角保持在指定的 position。矩形的尺寸保持不变。

另请参阅 setTopLeft(),moveTop(),和 moveLeft()。

[constexpr noexcept] void QRect::moveTopRight(const QPoint &position)

移动矩形,使右上角保持在指定的 position。矩形的尺寸保持不变。

另请参阅 setTopRight(),moveTop(),和 moveRight()。

[noexcept] QRect QRect::normalized() const

返回一个规范化的矩形;即具有非负宽度和高度的矩形。

如果 width() < 0,则函数交换左右角,并在 height() < 0 时交换上下角。同时,角的位置从非包含性变为包含性。

另请参阅 isValid() 和 isEmpty()。

返回矩形右侧边的 x 坐标。

请注意,由于历史原因,此函数返回 left() + width() - 1;请使用 x() + width 获取真实 x 坐标。

另请参阅 setRight(),topRight(),和 bottomRight()。

[constexpr noexcept] void QRect::setBottom(int y)

将矩形的底部设置为给定的 y 坐标。可能会改变高度,但永远不会改变矩形的顶部边缘。

另请参阅 bottom() 和 moveBottom()。

[constexpr noexcept] void QRect::setBottomLeft(const QPoint &position)

将矩形的左下角设置为给定的 position。可能会改变大小,但永远不会改变矩形的右上角。

另请参阅 bottomLeft() 和 moveBottomLeft()。

[constexpr noexcept] void QRect::setBottomRight(const QPoint &position)

将矩形的右下角设置为给定的 position。可能会改变大小,但永远不会改变矩形的左上角。

另请参阅 bottomRight() 和 moveBottomRight()。

[constexpr noexcept] void QRect::setCoords(int x1, int y1, int x2, int y2)

将矩形的左上角坐标设置为 (x1, y1),并将右下角坐标设置为 (x2, y2)。

另见getCoords() 和 setRect

[constexpr noexcept] void QRect::setHeight(int height)

将矩形的宽度设置为给定的 height。底部边缘会改变,但顶部边缘不会改变。

另见height() 和 setSize

[constexpr noexcept] void QRect::setLeft(int x)

将矩形的左边缘设置为给定的 x 坐标。可能会更改宽度,但不会更改矩形的右侧边缘。

等价于 setX

另见left() 和 moveLeft

[constexpr noexcept] void QRect::setRect(int x, int y, int width, int height)

将矩形的左上角坐标设置为 (x, y),并将大小设置为给定的 widthheight

另见getRect() 和 setCoords

[constexpr noexcept] void QRect::setRight(int x)

将矩形的右侧设置为给定的 x 坐标。可能会更改宽度,但不会更改矩形的左侧边缘。

另见right() 和 moveRight

[constexpr noexcept] void QRect::setSize(const QSize &size)

将矩形的尺寸设置为给定的 size。左上角不会移动。

另见size(),setWidth() 和 setHeight

[constexpr noexcept] void QRect::setTop(int y)

将矩形的顶部设置为给定的 y 坐标。可能会更改高度,但不会更改矩形的底部边缘。

等价于 setY

另见top() 和 moveTop

[constexpr noexcept] void QRect::setTopLeft(const QPoint &position)

将矩形左上角设置为指定的 位置。可能改变大小,但永远不会改变矩形的右下角。

参见topLeft() 和 moveTopLeft

[constexpr noexcept] void QRect::setTopRight(const QPoint &position)

将矩形右上角设置为指定的 位置。可能改变大小,但永远不会改变矩形的左下角。

参见topRight() 和 moveTopRight

[constexpr noexcept] void QRect::setWidth(int width)

将矩形的宽度设置为指定的 宽度。右边缘改变,但左边缘不改变。

参见width() 和 setSize

[constexpr noexcept] void QRect::setX(int x)

将矩形的左边缘设置为给定的 x 坐标。可能会更改宽度,但不会更改矩形的右侧边缘。

等同于 setLeft

参见x(),setY() 和 setTopLeft

[constexpr noexcept] void QRect::setY(int y)

将矩形的顶部设置为给定的 y 坐标。可能会更改高度,但不会更改矩形的底部边缘。

等同于 setTop

参见y(),setX() 和 setTopLeft

[constexpr noexcept] QSize QRect::size() const

返回矩形的尺寸。

参见setSize(),width() 和 height

[static constexpr noexcept, since 6.0] QRect QRect::span(const QPoint &p1, const QPoint &p2)

返回覆盖两个点 p1p2 的矩形,包括两个点和它们之间的一切。

此函数自 Qt 6.0 以来推出。

[noexcept] CGRect QRect::toCGRect() const

QRect 创建一个 CGRect。

参见QRectF::fromCGRect

[constexpr noexcept, since 6.4] QRectF QRect::toRectF() const

将此矩形作为具有浮点精度的矩形返回。

注意: 此函数,如同 QRectF(QRect) 构造函数,保留矩形的 size(),而不是它的 bottomRight() 角。

此函数自 Qt 6.4 以来推出。

参见QRectF::toRect

[constexpr noexcept] int QRect::top() const

返回矩形顶部边的y坐标。等同于y

另请参阅 setToptopLefttopRight

[constexpr noexcept] QPoint QRect::topLeft() const

返回矩形左上角的坐标。

另请参阅 setTopLefttopleft

[constexpr noexcept] QPoint QRect::topRight() const

返回矩形右上角的坐标。

请注意,由于历史原因,此函数返回QPoint(left() + width() - 1, top())。

另请参阅 setTopRighttopright

[constexpr noexcept] void QRect::translate(int dx, int dy)

沿x轴将矩形移动dx,沿y轴移动dy,相对于当前位置。正数值将矩形移动到右侧和下方。

另请参阅 moveTopLeftmoveTotranslated

[constexpr noexcept] void QRect::translate(const QPoint &offset)

这是一个重载的函数。

沿x轴将矩形移动offset.x(),沿y轴移动offset.y(),相对于当前位置。

[constexpr noexcept] QRect QRect::translated(int dx, int dy) const

返回当前位置沿x轴移动dx,沿y轴移动dy的矩形副本。正数值将矩形移动到右侧和下方。

另请参阅 translate

[constexpr noexcept] QRect QRect::translated(const QPoint &offset) const

这是一个重载的函数。

返回当前位置沿x轴移动offset.x(),沿y轴移动offset.y()的矩形副本。

[constexpr noexcept] QRect QRect::transposed() const

返回宽度与高度交换后矩形的副本。

QRect r = {15, 51, 42, 24};
r = r.transposed(); // r == {15, 51, 24, 42}

另请参阅 QSize::transposed

[noexcept] QRect QRect::united(const QRect &rectangle) const

返回此矩形与给定 rectangle 的边界矩形。

另请参阅intersected

[constexpr noexcept] int QRect::width() const

返回矩形的宽度。

另请参阅setWidth(),height() 和 size()。

[constexpr noexcept] int QRect::x() const

返回矩形左边的 x 坐标。等同于 left()。

另请参阅setX(),y() 和 topLeft()。

[constexpr noexcept] int QRect::y() const

返回矩形上边的 y 坐标。等同于 top()。

另请参阅setY(),x() 和 topLeft()。

[noexcept] QRect QRect::operator&(const QRect &rectangle) const

返回此矩形与给定 rectangle 的交集。如果没有交集,则返回空矩形。

另请参阅operator&=() 和 intersected()。

[noexcept] QRect &QRect::operator</>=(const QRect &rectangle)

将此矩形与给定 rectangle 相交集。

另请参阅intersected() 和 operator</>

[constexpr noexcept] QRect &QRect::operator+=(const QMargins &margins)

margins 添加到矩形中,使其增大。

另请参阅marginsAdded(),marginsRemoved() 和 operator-->=

[constexpr noexcept] QRect &QRect::operator-=(const QMargins &margins)

返回通过 margins 减小的矩形。

另请参阅marginsRemoved(),operator+=() 和 marginsAdded()。

[noexcept] QRect QRect::operator|(const QRect &rectangle) const

返回此矩形与给定 rectangle 的边界矩形。

另请参阅operator|=() 和 united()。

[noexcept] QRect &QRect::operator|=(const QRect &rectangle)

将此矩形与给定的rectangle合并。

另请参阅united() 和 operator|

相关非成员

[constexpr noexcept] bool operator!=(const QRect &r1, const QRect &r2)

如果矩形r1r2不同,则返回true,否则返回false

[constexpr noexcept] QRect operator+(const QRect &rectangle, const QMargins &margins)

返回通过放大marginsrectangle

[constexpr noexcept] QRect operator+(const QMargins &margins, const QRect &rectangle)

这是一个重载的函数。

返回通过放大marginsrectangle

[constexpr noexcept] QRect operator-(const QRect &lhs, const QMargins &rhs)

返回通过减小rhs边距的lhs矩形。

QDataStream &operator<<(QDataStream &stream, const QRect &rectangle)

将给定的rectangle写入给定的stream,并返回对流的引用。

另请参阅序列化 Qt 数据类型

[constexpr noexcept] bool operator==(const QRect &r1, const QRect &r2)

如果矩形r1r2相等,则返回true,否则返回false

QDataStream &operator>>(QDataStream &stream, QRect &rectangle)

从给定的stream中读取矩形到给定的rectangle中,并返回对流的引用。

另请参阅序列化 Qt 数据类型

© 2024 The Qt Company Ltd. 这里包含的文档贡献是各自所有者的版权。提供的文档是根据自由软件基金会出版的GNU 自由文档许可证版本 1.3 的条款许可的。Qt 及其标志是 The Qt Company Ltd. 在芬兰和其他国家/地区的商标。所有其他商标均为其各自所有者的财产。