QGraphicsItem删除选中的图元

删除图元,首先要选中它们。首先要设置它们为可选状态。下面是例子。

void CenterWidget::cmd_test_slot(void)
{
    //测试:选择图元
    //获得所有元素的指针列表
    QList item_list_p = view->scene->items();

    //选择所有图元
    for(int i=0; isetFlag(QGraphicsItem::ItemIsSelectable);
        item_list_p[i]->setSelected(true);  //设置为选中状态
    }

    //删除所有选中的图元
    for(int i=0; iisSelected()){
            view->scene->removeItem(item_list_p[i]);  //移除
            delete item_list_p[i];  //删除
        }
    }

}

你可能感兴趣的:(Qt5,C++)