1
2 августа 2020 г. 21:17

C++QT QGraphics преобразование координат

QGraphicsItem Qt

В переопределенной функции
mousePressEvent(QGraphicsSceneMouseEvent event) класса QGraphicsItem (или подкласса от него)
есть метод
QPoint QGraphicsSceneMouseEvent::screenPos() const
позволяющий получить экранные координаты в точке
нажатия мыши:
… ::mousePressEvent(QGraphicsSceneMouseEvent
event)
{ qDebug()<<"В координатах экрана монитора:"< screenPos()<<endl
QGraphicsItem::mousePressEvent(event);
update();
}
Вопрос: можно ли без …

Читать
Михаиллл
1 сентября 2019 г. 21:09

QtКак обращаться к объектам QGraphicsItem созданным в QGraphicsView

QGraphicsView, QGraphicsItem

Добрый день.
С помощью такого класса создаю эллементы в QGraphicsView

  1. class MoveItem : public QObject, public QGraphicsItem
  2. {
  3. Q_OBJECT
  4. public:
  5. explicit MoveItem(QObject *parent = 0);
  6. ~MoveItem();
  7. int id;
  8. int width, height;
  9.  
  10. private:
  11. QRectF boundingRect() const;
  12. void paint(QPainter *painter, const QStyleOptionGraphicsItem
Читать
Михаиллл
20 июля 2019 г. 19:52

QtКак добавлять на QGraphicsScene элементы в виде картинок

QGraphicsItem, qgraphicsitem

Добрый день.
Взял код из этой статьи.
Кочу добавлять эллементы QGraphicsItem не в виде прямоугольника, а в виде картинки.
Попробовал сделать так, но картинка не добавляется.
Скажите пожалуйста, как сделать правильно?

  1. void MoveItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
  2. {
Читать
f
8 мая 2018 г. 18:44

C++Нарисовать дугу в QGraphicsItem

QGraphicsItem, Qt, QGraphicsScene

Необходимо уметь рисовать направленный граф.
В примерах QT нашел проект elasticnodes . Его переделал под свою задачу.
Получилось реализовать создание вершин/стрелок и их выделение/удаление/перемещение. Вот только не получается сделать дугу на самого себя и его область выделения.
Для выделение стрелок(Edge) …
Читать
i
7 мая 2017 г. 17:41

PyQt5Не приходят mousePressEvent от дочерних item'ов а

PyQT5 QT5 QGraphicsItem

На QGraphicsScene размещен переопределенный QGraphicsRectItem, в который добавлены с помощью addItem несколько дочерних QGraphicsRectItem. Фильтр событий для child'ов включен (setFiltersChildEvents(True)). По идее, любой клик на child, должен вызывать mousePressEvent у родительского QGraphicsRectItem, но это не работает. Клики на родителе работают. …

Читать
d
17 января 2017 г. 17:17

QtСмена цвета объекта при клике мышью

Qt, QGraphicsItem, QGraphicsScene

Вот проект. При нажатии на квадрат он меняет цвет. Хотелось бы, чтобы он цвет менял, но не двигался. Мне зафиксировать сцену нужно или что сделать? Может кто-нибудь изменить код, чтобы квадрат не двигался, а лишь изменял цвет.

Читать