У меня есть объект QScene в QWidget, а внутри QWidget у меня есть QGraphicsView.Я конвертирую изображения в QPixMap и передаю его QScene как элемент, и я определяю сенсорные события в классе QGraphicsView.В методе создателя QGraphicsView я включил сенсорные события с помощью:
viewport()->setAttribute(Qt::WA_AcceptTouchEvents);
и управляю сенсорным событием, переопределив метод ViewPortEvent:
bool DicomView::viewportEvent(QEvent *event)
{
if(event->type() == QEvent::TouchBegin)
{
QTouchEvent *touchEvent = static_cast<QTouchEvent *>(event);
.......
return QGraphicsView::viewportEvent(event);
}
PS: DicomView является типом QGraphicsView.
Моя проблема в том, что когда я запускаю приложение, я могу получить сенсорные входы из вида, но когда я попадаю в QView, не могу получить сенсорный ввод из QPixMap.Я попытался поместить методы внутри QScene вместо QGraphicsView, но в QScene нет метода ViewPortEvent.Что я должен делать?