Как использовать mouseEvent в QGraphicsView

c++ qt

437 просмотра

1 ответ

149 Репутация автора

У меня есть класс, который наследует, QGraphicsViewи я хочу добавить mousePressEventв этот класс.
Как я могу это сделать?

Это моя функция:

void mousePressEvent(QGraphicsSceneMouseEvent *event) {
    cards[0]->setPos(event->pos());
    scene->addItem(cards[0]);
}

Где cards[0]есть QGraphicsPixmapItem, но это не работает.

Автор: Arya Sadeghi Источник Размещён: 19.07.2016 08:06

Ответы (1)


1 плюс

1832 Репутация автора

Решение

Я думаю, что у вас неправильный тип параметра в вашей mousePressEventфункции.

В использовании QGraphicsViewвы должны mousePressEvent(QMouseEvent*)и нет mousePressEvent(QGraphicsSceneMouseEvent*). Это mousePressEvent(QGraphicsSceneMouseEvent*)метод QGraphicsScene, а не из QGraphicsView.

Автор: Fabio Размещён: 19.07.2016 09:20
Вопросы из категории :
32x32