Название: Переключатель опций на основе нескольких QGraphicsItem Отправлено: Serg от Ноябрь 18, 2011, 14:02 Добрый день всем.
Я ищу решение такой-то проблемы... Есть несколько QGraphicsItem, размещенных на сцене. Они должны работать как переключатели (Radio buttons) (один из них и только один должен быть всегда активным). Етот активный QGraphicsItem должен быть в списке элементов QGraphicsScene::selectedItems () (просто графического отображения того, что он выбран мало, он обязательно должен быть в списке selectedItems () !!!). Написал я тестовый код, на котором можно поискать решение (вложенные файлы). LCD показывает, сколько выделенных элементов на сцене (выделенных, которые записаны в список selectedItems()) Перегрузки QGraphicsView и переопределение событий миши для контроля за сценой я делал и это помогает. Но я хочу найти объектноориентированное решение, чтобы GraphicsИтемы могли сами себя контролировать. Проверял работу события QGraphicsItem::ItemSelectedChange. В документации написано, что нужно вернуть требуемое состояние выделения из функции itemChange(). И хотя, если вернуть тру - элемент визуально останется выделенным, но он всеровно удаляется со списка selectedItems(). Сейчас пытаюсь поискать решение с QGraphicsItem наподобие GroupBox для виджетов... Кто нибудь сталкивался с этой проблемой? Как это можно реализовать? |