Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Qt
Войти
Регистрация
Восстановить пароль
 
denis_kj
Вирусоборец
37 / 37 / 1
Регистрация: 08.08.2010
Сообщений: 145
#1

QGraphicsScene - selectionArea - C++ Qt

02.12.2012, 21:45. Просмотров 1022. Ответов 4
Метки нет (Все метки)

Здравствуйте!

Есть программа: которая отображает фигуры с помощью сцены. Для фигур использую QGraphicsPolygonItem. Установил флаг ItemIsSelectable.

Вопрос: как при выборе фигуры получать ее указатель. Есть метод у сцены selectionArea, который вроде бы возвращает то, что выбрано. Тип возвращаемого результата - QPainterPath. Как преобразовать этот тип в QGraphicsPolygonItem мне не ясно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2012, 21:45
Я подобрал для вас темы с готовыми решениями и ответами на вопрос QGraphicsScene - selectionArea (C++ Qt):

QGraphicsScene и QGraphicsScene::mousePressEvent
Пишу Paint, проблема вот в чем: при нажатии на мышь происходит событие mousePressEvent, т.е. сигнал что нужно рисовать новую фигуру,...

QGraphicsScene и QGraphicsScene::mousePressEvent
Пишу Paint, проблема вот в чем:): при нажатии на мышь происходит событие mousePressEvent, т.е. сигнал что нужно рисовать новую фигуру,...

Qt и QGraphicsScene
Здравствуйте. Из-за учёбы необходимо быстро пройти отображения картинки в Qt. Хочется более или менее грамотно составить программу. Дошел...

QGraphicsScene
ситуация такая: есть QGraphicsScene, в нем находится QTabWidget, и на каждой из вкладок стоит QFrame с QGridLayout. проблема в...

QGraphicsScene
привет всем! так как новичок, может быть и глупый вопрос...а вопрос такой . я создал форму в qt designer, создал проект и вставил туда саму...

QGraphicsScene зум
День добрый, подскажите пожалуйста можно ли на QGraphicsScene событием QGraphicsSceneWheelEvent увеличивать и уменьшать все элементы...

4
Night_Light
17 / 17 / 2
Регистрация: 14.02.2009
Сообщений: 86
03.12.2012, 16:05 #2
Просмотрите внимательнее методы класса сцены ... там точно должен быть метод получения указателя на элемент по координате.
Как наиболее правильно решить задачу, не уверен, очень советую глянуть на оффициальный пример векторного редактора в сорсах Qt.
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
25622 / 17175 / 6830
Регистрация: 22.10.2011
Сообщений: 30,369
Записей в блоге: 6
03.12.2012, 19:13 #3
denis_kj, непонятно, почему именно selectionArea, а не selectedItems (список QGraphicsItem*)?
1
denis_kj
Вирусоборец
37 / 37 / 1
Регистрация: 08.08.2010
Сообщений: 145
03.12.2012, 19:55  [ТС] #4
Цитата Сообщение от UI Посмотреть сообщение
denis_kj, непонятно, почему именно selectionArea, а не selectedItems (список QGraphicsItem*)?
Этого я не заметил, спасибо. Т.е. в списке окажутся объекты типов QGraphicsPolygonItem?
И список возвращает, значит при установке флага IsSelectable возможно множественное выделение с Ctrl?
0
Чистый
Автор FAQ
2713 / 1409 / 89
Регистрация: 08.09.2011
Сообщений: 3,741
Записей в блоге: 1
03.12.2012, 20:36 #5
а проверить никак?
C++ (Qt)
1
QList<QGraphicsItem *>  selectedItems () const
а уже содержимое QList можно преобразовать в QGraphicsPolygonItem
0
03.12.2012, 20:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.12.2012, 20:36
Привет! Вот еще темы с решениями:

QGraphicsScene и QGraphicsView
У меня Qt 5.1.1. Компилируется, но ничего не отображается. Подскажите что не так... QGraphicsScene scene(QRectF(0,0,300,300)); ...

QGraphicsScene clone
Здравствуйте. Есть такая проблема. В программе создается QGraphicsScene, после чего запихивается в QGraphicsView. После есть...

QGraphicsScene::mousePressEvent
void QGraphicsScene::mousePressEvent( QGraphicsSceneMouseEvent * mouseEvent ) { //Бла-бла. } Никак не реагирует на клик и пишет...

Точки в QGraphicsScene
Я генерирую 10 случайныx точек, и рисую их. Чтобы рисовать точки, использую класс GraphicsPointItem т.к. в QGraphicsScene известно, нет...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru