Название: Как сделать QGraphicsObject(Item) "прозрачным" для мыши? Отправлено: Fregloin от Январь 26, 2012, 11:55 Нужно расположить полупрозрачный прямоугольник над другими элементами так, что бы он отображался, но все события мыши игнорировал и пропускал через себя элементам, которые расположены под ним. Можно ли этого добиться?
Название: Re: Как сделать QGraphicsObject(Item) "прозрачным" для мыши? Отправлено: fabricant от Февраль 13, 2012, 11:51 http://www.prog.org.ru/topic_20393_0.html
вроде на эту тему топик Название: Re: Как сделать QGraphicsObject(Item) "прозрачным" для мыши? Отправлено: artiom_kh от Март 02, 2012, 12:15 перегрузи QGraphicsItem::shape в таком виде:
Код
Название: Re: Как сделать QGraphicsObject(Item) "прозрачным" для мыши? Отправлено: Fregloin от Октябрь 26, 2013, 01:18 Работает частично.
Короче суть такая, при копировании элементов на сцене я их клонирую, и клоны добавляю в группу. Потом при двидении мыши я перемещаю эту группу предвариетльно отцентрировав. при нажатии мыши группа должна удалиться, а из буфера должны вставиться новые. так вот, если например выделено два квадрата, они находятся друг от друга на некотором расстоянии и я вожу мышью, потом нажимаю кнопку - сцена отлавливает событие. Если же допустим в группе только один элемент и при нажатии мышью клик приходится на этот дочерний элемент - сцена не получает событие. пробовал вышеизложенные методы - не работают. Название: Re: Как сделать QGraphicsObject(Item) "прозрачным" для мыши? Отправлено: AlFoX от Октябрь 26, 2013, 05:01 item->setFlag(QGraphicsItem::ItemIsSelectable, false);
Название: Re: Как сделать QGraphicsObject(Item) "прозрачным" для мыши? Отправлено: Fregloin от Октябрь 26, 2013, 10:02 тоже опробовано - не работает...
Название: Re: Как сделать QGraphicsObject(Item) "прозрачным" для мыши? Отправлено: Fregloin от Октябрь 26, 2013, 10:15 разобрался, внутренняя логика актера сцены тупит, изза того что клик фактически приходится на клона элемента, но он не зарегестрирован. буду проверять на принадлежность к группе. поидее должно сработать. но все равно, сцена не получает сообщение что клик сделан по группе, а именно по элементу.
|