QPoint
定义了一个整形精度的点。
一个点可以通过X坐标和Y坐标来指定,其中X坐标和Y坐标可以通过x() 和y() 函数来确定。
当X和y都为零时,isNull()函数返回TRUE。
可以通过setX() andsetY()来设置坐标。也可以通过rx() andry()来直接改变当前点的坐标并返回其引用。
一个QPoint对象可以当成一个矢量来使用,可以进行加减操作。同样可以乘除一个整形或实型数据。
当一个QPoint对象被当做一个矢量时,可以同过manhattanLength()来近似的算出其长度。
成员函数:
QPoint::QPoint () //创建点(0,0)
QPoQPoint (intx,inty ) //创建点(x,y)
bool QPoint::isNull () const //当x,y都为零时返回True
int QPoint::manhattanLength () const //返回x,y的绝对值之和,被称为
从原点到点的“曼哈顿长度”。
例: QPoint oldPosition;
MyWidget::mouseMoveEvent(QMouseEvent *event)
{
QPoint point = event->pos() - oldPosition;
if (point.manhattanLength() > 3)
// the mouse has moved more than 3 pixels since the oldPosition
int & QPoint::rx () //返回这个点的X坐标的引用,用它可以直接操作点的坐标。
例 QPoint p(1, 2);
p.rx()--; // p becomes (0, 2
void QPoint::setX (int x ) //将X坐标设置为x。
int QPoint::x () const //返回点的x坐标
QPoint & QPoint::operator*= (qrealfactor ) //将当前点的坐标乘以factor,并返回这个点的引用。
例:
QPoint p(-1, 4);
p *= 2.5; // p becomes (-3, 10
注意:结果坐标为整形数据。非四舍五入,靠近哪个整数就为那个整数。
QPoint & QPoint::operator+= ( constQPoint & point ) //两点坐标相加,并返回其引用。
例:
QPoint p( 3, 7);
QPoint q(-1, 4);
p += q; // p becomes (2, 11)