QGraphicsItem 的类型检测与转换

简述

由于 QGraphicsScene 和 QGraphicsItem 的大多数便利函数(例如:items(),selectedItems()、collidingItems()、childItems())返回一个 QList<QGraphicsItem *> 列表,在遍历列表的时候,通常需要对其中的 QGraphicsItem 进行类型检测与转换,以确定实际的 item。

| 版权声明:一去、二三里,未经博主允许不得转载。

类型检测

QGraphicsItem 中包含两个与类型相关的枚举值:

enum {
    Type = 1,
    UserType = 65536
};

QGraphicsItem::Type

QGraphicsItem::Type 是标准 item 类中 virtual type() 函数返回的类型值。所有标准 item 与唯一的 Type 值相关联。例如,QGraphicsPathItem::type() 返回的值为 2。

class QGraphicsPathItem : public QAbstractGraphicsShapeItem
{
public:
    enum { Type = 2 };
    int type() const { 
©️2020 CSDN 皮肤主题: 技术黑板 设计师: CSDN官方博客 返回首页
实付39.90元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值