QRect Class Reference

[QtCore module]

查阅QRect类定义使用整数精度在平面的矩形。More…

Methods

  • __init__ (self)
  • __init__ (self, int aleft, int atop, int awidth, int aheight)
  • __init__ (self, QPoint atopLeft, QPoint abottomRight)
  • __init__ (self, QPoint atopLeft, QSize asize)
  • __init__ (self, QRect)
  • adjust (self, int dx1, int dy1, int dx2, int dy2)
  • QRect adjusted (self, int xp1, int yp1, int xp2, int yp2)
  • int bottom (self)
  • QPoint bottomLeft (self)
  • QPoint bottomRight (self)
  • QPoint center (self)
  • bool contains (self, QPoint point, bool proper = False)
  • bool contains (self, QRect rectangle, bool proper = False)
  • bool contains (self, int ax, int ay, bool aproper)
  • bool contains (self, int ax, int ay)
  • (int xp1, int yp1, int xp2, int yp2) getCoords (self)
  • (int ax, int ay, int aw, int ah) getRect (self)
  • int height (self)
  • QRect intersect (self, QRect r)
  • QRect intersected (self, QRect other)
  • bool intersects (self, QRect r)
  • bool isEmpty (self)
  • bool isNull (self)
  • bool isValid (self)
  • int left (self)
  • moveBottom (self, int pos)
  • moveBottomLeft (self, QPoint p)
  • moveBottomRight (self, QPoint p)
  • moveCenter (self, QPoint p)
  • moveLeft (self, int pos)
  • moveRight (self, int pos)
  • moveTo (self, int ax, int ay)
  • moveTo (self, QPoint p)
  • moveTop (self, int pos)
  • moveTopLeft (self, QPoint p)
  • moveTopRight (self, QPoint p)
  • QRect normalized (self)
  • int right (self)
  • setBottom (self, int pos)
  • setBottomLeft (self, QPoint p)
  • setBottomRight (self, QPoint p)
  • setCoords (self, int xp1, int yp1, int xp2, int yp2)
  • setHeight (self, int h)
  • setLeft (self, int pos)
  • setRect (self, int ax, int ay, int aw, int ah)
  • setRight (self, int pos)
  • setSize (self, QSize s)
  • setTop (self, int pos)
  • setTopLeft (self, QPoint p)
  • setTopRight (self, QPoint p)
  • setWidth (self, int w)
  • setX (self, int ax)
  • setY (self, int ay)
  • QSize size (self)
  • int top (self)
  • QPoint topLeft (self)
  • QPoint topRight (self)
  • translate (self, int dx, int dy)
  • translate (self, QPoint p)
  • QRect translated (self, int dx, int dy)
  • QRect translated (self, QPoint p)
  • QRect unite (self, QRect r)
  • QRect united (self, QRect r)
  • int width (self)
  • int x (self)
  • int y (self)

Special Methods

  • QRect __and__ (self, QRect r)
  • int __bool__ (self)
  • int __contains__ (self, QPoint p)
  • int __contains__ (self, QRect r)
  • bool __eq__ (self, QRect r2)
  • QRect __iand__ (self, QRect r)
  • QRect __ior__ (self, QRect r)
  • bool __ne__ (self, QRect r2)
  • QRect __or__ (self, QRect r)
  • str __repr__ (self)

Detailed Description

这个类可以醃制。

查阅QRect类定义使用整数精度在平面的矩形。

一个矩形,通常表示为左上角和尺寸。一个查阅QRect的大小(宽度和高度)总是等于其形成的基础,其呈现的数学矩形。

阿查阅QRect可以用一组左,上,宽度和高度的整数,或者从一个被构造QPointQSize。下面的代码创建两个相同的矩形。

  1. QRect r1(100, 200, 11, 16);
  2. QRect r2([QPoint]($docs-qpoint.html)(100, 200), [QSize]($docs-qsize.html)(11, 16));

还有就是使用左上角和右下角坐标创建一个查阅QRect第三个构造函数,但是我们建议您避免使用它。理由是,由于历史原因,返回的值bottom()和right()函数偏离矩形的真实右下角。

查阅QRect类提供了返回的各种矩形坐标函数的集合,使操纵这些。查阅QRect也提供功能,以矩形相对移动到不同的坐标。此外,还有一个moveTo( )函数,移动矩形,留下它的左上角在给定的坐标。或者,所述translate()函数使矩形给定的偏移量相对于当前位置,并且translated( )函数返回这个矩形的翻译件。

size( )函数返回rectange的尺寸为QSize。的尺寸也可以单独使用检索到的width()和height()函数。操控方面使用setSize( )setWidth()或setHeight()函数。可替换地,大小可以通过应用或功能设定矩形的坐标,例如被改变,setBottom()或setRight( ) 。

contains( )函数告诉一个给定的点是否是里面的矩形或没有了,intersects如果这个矩形相交与给定的矩形( )函数返回True。查阅QRect类还提供了intersected()函数返回相交的矩形,并在united( )函数将返回一个封装给定的矩形,这个矩形:

| QRect Class Reference - 图1 | QRect Class Reference - 图2 | | intersected() | united() |

isEmpty( )函数返回True,如果left( ) \u003eright()或top( ) \u003ebottom( ) 。需要注意的是一个空矩形是无效的:在isValid( )函数返回True,如果left( )\u003c=right( )and top( )\u003c=bottom( ) 。一个空矩形(isNull()== TRUE) ,另一方面,也将宽度和高度设置为0。

注意,由于该方式查阅QRect和QRectF被定义,一个空的查阅QRect在本质上以同样的方式定义为QRectF

最后,相比查阅QRect对象可以被串流播放,以及。

Rendering

当使用一个anti-aliased画家,查阅QRect的边界线将对称地在数学矩形的边界线的两侧呈现。但使用一个别名画家(默认值)时,其他规则。

然后,用一个像素宽的画笔渲染时查阅QRect的边界线将呈现给正确的和数学矩形的边界线下方。

当与两个像素宽画笔绘制边界线会由数学矩形被分割在中间。这将是这种情况时的笔被设置成偶数个像素,而与像素数为奇数的笔绘制,备用像素将呈现向右和数学矩形中的一个像素的情况下。

| QRect Class Reference - 图3 | QRect Class Reference - 图4 | | Logical representation | One pixel wide pen | | QRect Class Reference - 图5 | QRect Class Reference - 图6 | | Two pixel wide pen | Three pixel wide pen |

Coordinates

查阅QRect类提供了返回的各种矩形坐标函数的集合,使操纵这些。查阅QRect也提供功能,以矩形相对移动到不同的坐标。

例如在left( )setLeft()和moveLeft()函数,例如:left()返回矩形的左边缘的x坐标,setLeft()设置矩形的左边缘到给定的x坐标(它可能会改变宽度,但决不会改变矩形的右边缘)和moveLeft( )移动整个矩形水平,使矩形的左边缘在给定的x坐标和尺寸不变。

QRect Class Reference - 图7

请注意,返回的值的历史原因bottom()和right()函数偏离矩形的真实右下角:该right( )函数返回left() + width() - 1bottom( )函数返回top() + height() - 1。同样是由返回的点的情况bottomRight( )的便利功能。另外, x和y的坐标topRight()和bottomLeft()函数,分别包含来自真右边缘和下边缘的偏差相同。

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

另外,也可以使用偏移量添加到该矩形的坐标adjust()函数,以及检索使用基于原来的1调整一个新的矩形的adjusted()函数。如果其中的宽度和高度为负时,用normalized()函数来检索其中的角部被交换的矩形。

此外,查阅QRect提供getCoords()函数,其提取的矩形的左上角和右下角的位置,并且getRect( )函数,它提取矩形的左上角,宽度和高度。使用setCoords()和setRect( )函数来处理矩形的坐标和尺寸一气呵成。


Method Documentation

  1. QRect.__init__ (self)

构造一个空矩形。

See also isNull( ) 。

  1. QRect.__init__ (self, int aleft, int atop, int awidth, int aheight)

构造一个矩形与给定topLeftbottomRight角落。

See also setTopLeft()和setBottomRight( ) 。

  1. QRect.__init__ (self, QPoint atopLeft, QPoint abottomRight)

构造一个矩形与给定topLeft角部和所述定size

See also setTopLeft()和setSize( ) 。

  1. QRect.__init__ (self, QPoint atopLeft, QSize asize)

构造一个矩形(xy)作为它的左上角和给定的widthheight

See also setRect( ) 。

  1. QRect.__init__ (self, QRect)
  1. QRect.adjust (self, int dx1, int dy1, int dx2, int dy2)

添加dx1dy1dx2dy2分别以矩形的现有的坐标。

See also adjusted()和setRect( ) 。

  1. QRect QRect.adjusted (self, int xp1, int yp1, int xp2, int yp2)

[

返回一个新的矩形dx1dy1dx2dy2分别加入到这个矩形的现有坐标。

]($docs-qrect.html)

See also adjust( ) 。

  1. int QRect.bottom (self)

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

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

See also setBottom( )bottomLeft()和bottomRight( ) 。

  1. QPoint QRect.bottomLeft (self)

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

See also setBottomLeft( )bottom()和left( ) 。

  1. QPoint QRect.bottomRight (self)

[

返回矩形的右下角的位置。

]($docs-qpoint.html)

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

See also setBottomRight( )bottom()和right( ) 。

  1. QPoint QRect.center (self)

[

返回矩形的中心点。

]($docs-qpoint.html)

See also moveCenter( ) 。

  1. bool QRect.contains (self, QPoint point, bool proper = False)

返回True如果给定的point是内部或矩形的边缘,否则返回False 。如果proper诚然,这个功能只有在给定返回Truepoint is inside的矩形(即,不上的边缘)。

See also intersects( ) 。

  1. bool QRect.contains (self, QRect rectangle, bool proper = False)

这是一个重载函数。

返回True如果点(xy)是内部或矩形的边缘,否则返回False 。如果proper诚然,这个功能只有在点是完全的矩形(而不是在边缘)内返回True 。

  1. bool QRect.contains (self, int ax, int ay, bool aproper)

这是一个重载函数。

返回True如果点(xy)是这个矩形内,否则返回False 。

  1. bool QRect.contains (self, int ax, int ay)

这是一个重载函数。

返回True如果给定的rectangle这是矩形内。否则返回False 。如果proper诚然,这个函数只返回True,如果rectangle完全是这个矩形(而不是在边缘)内。

  1. (int xp1, int yp1, int xp2, int yp2) QRect.getCoords (self)

提取矩形的左上角的位置x1y1和右下角为的位置x2y2

See also setCoords()和getRect( ) 。

  1. (int ax, int ay, int aw, int ah) QRect.getRect (self)

提取矩形的左上角的位置xy,其尺寸widthheight

See also setRect()和getCoords( ) 。

  1. int QRect.height (self)

返回该矩形的高度。

See also setHeight( )width()和size( ) 。

  1. QRect QRect.intersect (self, QRect r)

  1. QRect QRect.intersected (self, QRect other)

[

返回此矩形的交集和给定的rectangle。需要注意的是r.intersected(s)相当于r & s

QRect Class Reference - 图8

这个函数中引入了Qt 4.2中。

]($docs-qrect.html)

See also intersects( )united()和operator&=( ) 。

  1. bool QRect.intersects (self, QRect r)

如果这个矩形相交与给定的,则返回Truerectangle(即,至少有一个像素是两个矩形内),否则返回假。

相交的矩形可使用检索到的intersected()函数。

See also contains( ) 。

  1. bool QRect.isEmpty (self)

返回True如果矩形为空,否则返回False 。

一个空矩形有一个left( ) \u003eright()或top( ) \u003ebottom( ) 。一个空矩形是无效的(即,参考isEmpty ( ) == !isValid())。

使用normalized()函数来检索其中的角部被交换的矩形。

See also isNull( )isValid()和normalized( ) 。

  1. bool QRect.isNull (self)

返回True如果矩形为空矩形,否则返回False 。

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

See also isEmpty()和isValid( ) 。

  1. bool QRect.isValid (self)

返回True如果矩形是有效的,否则返回False 。

一个有效的矩形有一个left()\u003cright()和top()\u003cbottom( ) 。请注意,就像十字路口不平凡的操作没有定义无效矩形。一个有效的矩形不为空(即参考isValid ( ) == !isEmpty())。

See also isNull( )isEmpty()和normalized( ) 。

  1. int QRect.left (self)

返回矩形的左边缘的x坐标。相当于x( ) 。

See also setLeft( )topLeft()和bottomLeft( ) 。

  1. QRect.moveBottom (self, int pos)

移动矩形垂直,使矩形的底边在给定的y协调。矩形的尺寸是不变的。

See also bottom( )setBottom()和moveTop( ) 。

  1. QRect.moveBottomLeft (self, QPoint p)

移动矩形,留下左下角在给定的position。矩形的尺寸是不变的。

See also setBottomLeft( )moveBottom()和moveLeft( ) 。

  1. QRect.moveBottomRight (self, QPoint p)

移动矩形,留下右下角的定position。矩形的尺寸是不变的。

See also setBottomRight( )moveRight()和moveBottom( ) 。

  1. QRect.moveCenter (self, QPoint p)

移动矩形,而使中心点在给定的position。矩形的尺寸是不变的。

See also center( ) 。

  1. QRect.moveLeft (self, int pos)

水平移动矩形,使矩形的左边缘在给定的x协调。矩形的尺寸是不变的。

See also left( )setLeft()和moveRight( ) 。

  1. QRect.moveRight (self, int pos)

水平移动矩形,使矩形的右边缘在给定的x协调。矩形的尺寸是不变的。

See also right( )setRight()和moveLeft( ) 。

  1. QRect.moveTo (self, int ax, int ay)

移动矩形,留下左上角的指定位置(xy) 。矩形的尺寸是不变的。

See also translate()和moveTopLeft( ) 。

  1. QRect.moveTo (self, QPoint p)

移动矩形,留下左上角在给定的position

  1. QRect.moveTop (self, int pos)

移动矩形垂直,使矩形的顶边在给定的y协调。矩形的尺寸是不变的。

See also top( )setTop()和moveBottom( ) 。

  1. QRect.moveTopLeft (self, QPoint p)

移动矩形,留下左上角在给定的position。矩形的尺寸是不变的。

See also setTopLeft( )moveTop()和moveLeft( ) 。

  1. QRect.moveTopRight (self, QPoint p)

移动矩形,留下右上角的定position。矩形的尺寸是不变的。

See also setTopRight( )moveTop()和moveRight( ) 。

  1. QRect QRect.normalized (self)

[

返回一个归一化的矩形,即,具有一个非负的宽度和高度的矩形。

]($docs-qrect.html)

If width()\u003c 0的函数交换的左右角部,并且交换的顶部和底部边角,如果height()\u003c 0 。

See also isValid()和isEmpty( ) 。

  1. int QRect.right (self)

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

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

See also setRight( )topRight()和bottomRight( ) 。

  1. QRect.setBottom (self, int pos)

设置的矩形的底部边缘与给定的y协调。可能会改变高度,但决不会改变矩形的上边缘。

See also bottom()和moveBottom( ) 。

  1. QRect.setBottomLeft (self, QPoint p)

设置矩形的左下角给定的position。可以改变大小,但决不会改变矩形的右上角。

See also bottomLeft()和moveBottomLeft( ) 。

  1. QRect.setBottomRight (self, QPoint p)

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

See also bottomRight()和moveBottomRight( ) 。

  1. QRect.setCoords (self, int xp1, int yp1, int xp2, int yp2)

设置矩形的左上角的坐标为(x1y1)和其右下角的坐标(x2y2) 。

See also coords( )getCoords()和setRect( ) 。

  1. QRect.setHeight (self, int h)

设置了矩形的高度为给定的height。底部边缘被改变,但不顶一个。

See also height()和setSize( ) 。

  1. QRect.setLeft (self, int pos)

设置了矩形的左边缘到给定的x协调。可能会改变宽度,但决不会改变矩形的右边缘。

相当于setX( ) 。

See also left()和moveLeft( ) 。

  1. QRect.setRect (self, int ax, int ay, int aw, int ah)

设置矩形的左上角的坐标为(xy) ,并且其大小为给定的widthheight

See also rect( )getRect()和setCoords( ) 。

  1. QRect.setRight (self, int pos)

设置了矩形的右边缘到给定的x协调。可能会改变宽度,但决不会改变矩形的左边缘。

See also right()和moveRight( ) 。

  1. QRect.setSize (self, QSize s)

设置了矩形的大小给定的size。在左上角不移动。

See also size( )setWidth()和setHeight( ) 。

  1. QRect.setTop (self, int pos)

设置了矩形的顶边到给定的y协调。可能会改变高度,但决不会改变矩形的底边。

相当于setY( ) 。

See also top()和moveTop().

  1. QRect.setTopLeft (self, QPoint p)

设置的矩形的左上角的给定position。可以改变大小,但决不会改变矩形的右下角。

See also topLeft()和moveTopLeft( ) 。

  1. QRect.setTopRight (self, QPoint p)

设置矩形的右上角,以给定的position。可以改变大小,但决不会改变矩形的左下角。

See also topRight()和moveTopRight( ) 。

  1. QRect.setWidth (self, int w)

设置了矩形的宽度与给定width。右边缘被改变,但不是左1 。

See also width()和setSize( ) 。

  1. QRect.setX (self, int ax)

设置了矩形的左边缘到给定的x协调。可能会改变宽度,但决不会改变矩形的右边缘。

相当于setLeft( ) 。

See also x( )setY()和setTopLeft( ) 。

  1. QRect.setY (self, int ay)

设置了矩形的顶边到给定的y协调。可能会改变高度,但决不会改变矩形的底边。

相当于setTop( ) 。

See also y( )setX()和setTopLeft( ) 。

  1. QSize QRect.size (self)

[

返回矩形的大小。

]($docs-qsize.html)

See also setSize( )width()和height( ) 。

  1. int QRect.top (self)

返回矩形的上边缘的y坐标。相当于y( ) 。

See also setTop( )topLeft()和topRight( ) 。

  1. QPoint QRect.topLeft (self)

[

返回矩形的左上角的位置。

]($docs-qpoint.html)

See also setTopLeft( )top()和left( ) 。

  1. QPoint QRect.topRight (self)

[

返回矩形的右上角的位置。

]($docs-qpoint.html)

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

See also setTopRight( )top()和right( ) 。

  1. QRect.translate (self, int dx, int dy)

移动矩形dx沿x轴和dy沿着y轴,相对于当前位置。正值移动矩形向右和向下。

See also moveTopLeft( )moveTo()和translated( ) 。

  1. QRect.translate (self, QPoint p)

这是一个重载函数。

移动矩形offsetx()沿x轴和offsety()沿着y轴,相对于当前位置。

  1. QRect QRect.translated (self, int dx, int dy)

[

返回矩形的副本被翻译dx沿x轴和dy沿着y轴,相对于当前位置。正值移动矩形向右和向下。

]($docs-qrect.html)

See also translate( ) 。

  1. QRect QRect.translated (self, QPoint p)

[

这是一个重载函数。

]($docs-qrect.html)

返回矩形的副本被翻译offsetx()沿x轴和offsety()沿着y轴,相对于当前位置。

  1. QRect QRect.unite (self, QRect r)

  1. QRect QRect.united (self, QRect r)

[

返回此矩形的边框和给定rectangle

QRect Class Reference - 图9

这个函数中引入了Qt 4.2中。

]($docs-qrect.html)

See also intersected( ) 。

  1. int QRect.width (self)

返回矩形的宽度。

See also setWidth( )height()和size( ) 。

  1. int QRect.x (self)

返回矩形的左边缘的x坐标。相当于left( ) 。

See also setX( )y()和topLeft( ) 。

  1. int QRect.y (self)

返回矩形的上边缘的y坐标。相当于top( ) 。

See also setY( )x()和topLeft( ) 。

  1. QRect QRect.__and__ (self, QRect r)

[

  1. int QRect.__bool__ (self)
  1. int QRect.__contains__ (self, QPoint p)
  1. int QRect.__contains__ (self, QRect r)
  1. bool QRect.__eq__ (self, QRect r2)

]($docs-qrect.html)

  1. QRect QRect.__iand__ (self, QRect r)

  1. QRect QRect.__ior__ (self, QRect r)

[

  1. bool QRect.__ne__ (self, QRect r2)

]($docs-qrect.html)

  1. QRect QRect.__or__ (self, QRect r)

[

  1. str QRect.__repr__ (self)

]($docs-qrect.html)