Список QGraphicsItemGroup

У меня есть несколько QGraphicsItemGroup, нарисованных в моем QGraphicsScene. Я хочу получить список выбранных QGraphicsItemGroup.

я выбираю с помощью

setDragMode(QGraphicsView::RubberBandDrag);

Функция selectedItems() возвращает список выбранных QGraphicsItem. Есть ли альтернатива сделать то же самое для групп?

Изменить

Я создал список QGraphicsItemGroup как:

QList<QGraphicsItemGroup *> selectionList;

Я хочу получить выбранные элементы (группы) в этом списке.

Как мне ввести cast QList<QGraphicsItem *>, чтобы получить selectionList?


person Gurjot Bhatti    schedule 10.10.2014    source источник


Ответы (1)


Если вы посмотрите на документацию для QGraphicsItem::ItemIsSelectable , Говорится: -

Элемент поддерживает выделение. Включение этой функции позволит setSelected() переключать выбор элемента. Это также позволяет автоматически выбирать элемент в результате вызова QGraphicsScene::setSelectionArea(), щелчка по элементу, или с помощью выделения резинкой в ​​QGraphicsView.

Поскольку QGraphicsItemGroup является производным от QGraphicsItem, я подозреваю, что по умолчанию для QGraphicsItemGroup этот флаг не выбран. Итак, для каждой группы установите этот флаг, и если вы хотите, чтобы группы возвращались только из выделения резинкой, отключите флаги для всех остальных элементов.

person TheDarkKnight    schedule 10.10.2014